Skip to content

๐Ÿงฌ GeneSnap is an interactive, educational React application designed to help users explore genetic information ๐Ÿงฌ through fun visualizations ๐ŸŽจ and games ๐ŸŽฎ. Users can learn about their genetic makeup ๐Ÿงฌ๐Ÿง‘โ€๐Ÿ”ฌ, inheritance patterns ๐Ÿ”„, and how certain traits are passed down through generations ๐Ÿ”ฌ. With a focus on visualizing DNA sequences.

Notifications You must be signed in to change notification settings

scs805/gene-snap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

8 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

GeneSnap ๐ŸŒฑ๐Ÿงฌ

GeneSnap is an interactive, educational React application designed to help users explore genetic information ๐Ÿงฌ through fun visualizations ๐ŸŽจ and games ๐ŸŽฎ. Users can learn about their genetic makeup ๐Ÿงฌ๐Ÿง‘โ€๐Ÿ”ฌ, inheritance patterns ๐Ÿ”„, and how certain traits are passed down through generations ๐Ÿ”ฌ. With a focus on visualizing DNA sequences ๐Ÿงฌ and chromosome structures ๐Ÿงฌ๐Ÿ”, GeneSnap aims to make genetics engaging and approachable for students ๐Ÿ“š, hobbyists ๐ŸŽจ, and anyone curious about the science of heredity ๐ŸŒฑ.

Features โœจ

  • Interactive DNA Visualizations: Visualize DNA sequences and chromosomes to understand genetic information.
  • Educational Games: Fun, interactive games that teach inheritance patterns and genetic traits.
  • Explore Your Genetic Makeup: Learn about traits passed down through generations in an interactive way.
  • User-Friendly Design: Easy-to-navigate UI with smooth interactions, powered by Tailwind CSS for modern and responsive styling

Tech Stack ๐Ÿ› ๏ธ

GeneSnap

GeneSnap is an interactive, educational React application designed to help users explore genetic information through fun visualizations and games. Users can learn about their genetic makeup, inheritance patterns, and how certain traits are passed down through generations. With a focus on visualizing DNA sequences and chromosome structures, GeneSnap aims to make genetics engaging and approachable for students, hobbyists, and anyone curious about the science of heredity.

Key Features:

  • DNA Sequence Visualizer: Users can input a DNA sequence and visualize it with color-coded base pairs.
  • Trait Inheritance Simulator: Simulate Mendelian inheritance patterns and see how traits are passed through generations.
  • Gene Encyclopedia: A library of commonly studied genes and their associated traits, along with detailed explanations.
  • Interactive Games: Fun, interactive challenges to test your knowledge of genetics, such as guessing the genotypes of offspring based on parentsโ€™ traits.
  • Genetic Crosses Tool: A visual tool for performing Punnett square calculations and determining possible offspring outcomes.
  • Educational Content: Learn about genetics, genetic disorders, and gene therapy through easy-to-understand explanations and images.

Tech Stack:

  • React: For building the user interface.
  • D3.js: For rendering dynamic, interactive charts and genetic visualizations.
    • Redux: For managing global state and user interactions.
  • React Router: For handling routing between different pages.
  • Tailwind CSS: A utility-first CSS framework for fast and customizable UI design.
  • Vite: For fast development and bundling.

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/genesnap.git
    cd genesnap
  2. Install dependencies:

    npm install
  3. Run the development server:

    npm start
  4. Open your browser and navigate to http://localhost:3000 to start exploring genetics with GeneSnap!

Screenshots:

  • DNA Sequence Visualizer: Visualize your DNA sequences with interactive base pairs.
  • Punnett Square: Easily simulate genetic crosses and explore inheritance patterns.

Contribution:

Contributions to improve GeneSnap are welcome! Whether you want to add a new genetic trait, improve the visualizations, or contribute to the educational content, feel free to submit a pull request or open an issue.

License:

This project is open-sourced under the MIT License - see the LICENSE file for details.

Contact:

GeneSnap ๐ŸŒฑ๐Ÿงฌ

GeneSnap is an interactive, educational React application designed to help users explore genetic information ๐Ÿงฌ through fun visualizations ๐ŸŽจ and games ๐ŸŽฎ. Users can learn about their genetic makeup ๐Ÿงฌ๐Ÿง‘โ€๐Ÿ”ฌ, inheritance patterns ๐Ÿ”„, and how certain traits are passed down through generations ๐Ÿ”ฌ. With a focus on visualizing DNA sequences ๐Ÿงฌ and chromosome structures ๐Ÿงฌ๐Ÿ”, GeneSnap aims to make genetics engaging and approachable for students ๐Ÿ“š, hobbyists ๐ŸŽจ, and anyone curious about the science of heredity ๐ŸŒฑ.

Features โœจ

  • Interactive DNA Visualizations: Visualize DNA sequences and chromosomes to understand genetic information.
  • Educational Games: Fun, interactive games that teach inheritance patterns and genetic traits.
  • Explore Your Genetic Makeup: Learn about traits passed down through generations in an interactive way.
  • User-Friendly Design: Easy-to-navigate UI with smooth interactions, powered by Tailwind CSS for modern and responsive styling.

Tech Stack ๐Ÿ› ๏ธ

GeneSnap

GeneSnap is an interactive, educational React application designed to help users explore genetic information through fun visualizations and games. Users can learn about their genetic makeup, inheritance patterns, and how certain traits are passed down through generations. With a focus on visualizing DNA sequences and chromosome structures, GeneSnap aims to make genetics engaging and approachable for students, hobbyists, and anyone curious about the science of heredity.

Key Features:

  • DNA Sequence Visualizer: Users can input a DNA sequence and visualize it with color-coded base pairs.
  • Trait Inheritance Simulator: Simulate Mendelian inheritance patterns and see how traits are passed through generations.
  • Gene Encyclopedia: A library of commonly studied genes and their associated traits, along with detailed explanations.
  • Interactive Games: Fun, interactive challenges to test your knowledge of genetics, such as guessing the genotypes of offspring based on parentsโ€™ traits.
  • Genetic Crosses Tool: A visual tool for performing Punnett square calculations and determining possible offspring outcomes.
  • Educational Content: Learn about genetics, genetic disorders, and gene therapy through easy-to-understand explanations and images.

Tech Stack:

  • React: For building the user interface.
  • D3.js: For rendering dynamic, interactive charts and genetic visualizations.
    • Redux: For managing global state and user interactions.
  • React Router: For handling routing between different pages.
  • Tailwind CSS: A utility-first CSS framework for fast and customizable UI design.
  • Vite: For fast development and bundling.

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/genesnap.git
    cd genesnap
  2. Install dependencies:

    npm install
  3. Run the development server:

    npm start
  4. Open your browser and navigate to http://localhost:3000 to start exploring genetics with GeneSnap!

Directory Structure

genesnap/
โ”œโ”€โ”€ public/                         # Public assets served by the app
โ”‚   โ”œโ”€โ”€ index.html                  # Root HTML file
โ”‚   โ”œโ”€โ”€ favicon.ico                 # App favicon
โ”‚   โ””โ”€โ”€ assets/                     # Public static assets
โ”‚       โ”œโ”€โ”€ images/                 # Images like logos, icons, etc.
โ”‚       โ””โ”€โ”€ fonts/                  # Custom fonts
โ”œโ”€โ”€ src/                            # Main source code for the app
โ”‚   โ”œโ”€โ”€ components/                 # Reusable React components
โ”‚   โ”‚   โ”œโ”€โ”€ DNAVisualizer.js        # Component to visualize DNA sequences
โ”‚   โ”‚   โ”œโ”€โ”€ TraitSimulator.js       # Component for inheritance patterns simulator
โ”‚   โ”‚   โ”œโ”€โ”€ GeneEncyclopedia.js     # Component for displaying genes and traits info
โ”‚   โ”‚   โ”œโ”€โ”€ PunnettSquare.js        # Component for performing Punnett square calculations
โ”‚   โ”‚   โ”œโ”€โ”€ EducationalContent.js   # Component for displaying educational content
โ”‚   โ”‚   โ””โ”€โ”€ Navbar.js               # Navbar component
โ”‚   โ”œโ”€โ”€ pages/                      # Page-level components
โ”‚   โ”‚   โ”œโ”€โ”€ HomePage.js             # Main landing page
โ”‚   โ”‚   โ”œโ”€โ”€ AboutPage.js            # About page for the project
โ”‚   โ”‚   โ”œโ”€โ”€ GamePage.js             # Page for interactive games
โ”‚   โ”‚   โ””โ”€โ”€ GeneLibraryPage.js      # Gene library page
โ”‚   โ”œโ”€โ”€ store/                      # Redux store for global state management
โ”‚   โ”‚   โ”œโ”€โ”€ actions.js              # Redux actions
โ”‚   โ”‚   โ”œโ”€โ”€ reducers.js             # Redux reducers
โ”‚   โ”‚   โ””โ”€โ”€ store.js                # Redux store configuration
โ”‚   โ”œโ”€โ”€ utils/                      # Utility functions
โ”‚   โ”‚   โ”œโ”€โ”€ colorUtils.js           # Helper functions for color gradients
โ”‚   โ”‚   โ””โ”€โ”€ geneticUtils.js         # Functions for genetic calculations
โ”‚   โ”œโ”€โ”€ App.js                      # Root component of the application
โ”‚   โ”œโ”€โ”€ index.js                    # Entry point to render the app
โ”‚   โ”œโ”€โ”€ router.js                   # React Router configuration for page routing
โ”‚   โ”œโ”€โ”€ styles/                     # Global and component-specific styles
โ”‚   โ”‚   โ”œโ”€โ”€ global.css              # Global styles for the app
โ”‚   โ”‚   โ””โ”€โ”€ tailwind.css            # Tailwind CSS customizations
โ”‚   โ”œโ”€โ”€ .env                        # Environment variables (e.g., API keys)
โ”‚   โ””โ”€โ”€ .gitignore                  # Git ignore file
โ”œโ”€โ”€ tests/                          # Unit and integration tests
โ”‚   โ”œโ”€โ”€ components/                 # Component tests
โ”‚   โ”‚   โ”œโ”€โ”€ DNAVisualizer.test.js   # Tests for DNA visualizer
โ”‚   โ”‚   โ”œโ”€โ”€ TraitSimulator.test.js  # Tests for trait simulator
โ”‚   โ”‚   โ””โ”€โ”€ PunnettSquare.test.js   # Tests for Punnett square
โ”‚   โ”œโ”€โ”€ pages/                      # Page tests
โ”‚   โ””โ”€โ”€ utils/                      # Utility function tests
โ”œโ”€โ”€ tailwind.config.js              # Tailwind CSS configuration
โ”œโ”€โ”€ package.json                    # Project dependencies and scripts
โ”œโ”€โ”€ vite.config.js                  # Vite configuration for bundling
โ”œโ”€โ”€ tsconfig.json                   # TypeScript configuration
โ””โ”€โ”€ README.md                       # Project documentation

Screenshots:

  • DNA Sequence Visualizer: Visualize your DNA sequences with interactive base pairs.
  • Punnett Square: Easily simulate genetic crosses and explore inheritance patterns.

Contribution:

Contributions to improve GeneSnap are welcome! Whether you want to add a new genetic trait, improve the visualizations, or contribute to the educational content, feel free to submit a pull request or open an issue.

License:

This project is open-sourced under the MIT License - see the LICENSE file for details.

Contact:

About

๐Ÿงฌ GeneSnap is an interactive, educational React application designed to help users explore genetic information ๐Ÿงฌ through fun visualizations ๐ŸŽจ and games ๐ŸŽฎ. Users can learn about their genetic makeup ๐Ÿงฌ๐Ÿง‘โ€๐Ÿ”ฌ, inheritance patterns ๐Ÿ”„, and how certain traits are passed down through generations ๐Ÿ”ฌ. With a focus on visualizing DNA sequences.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published