Create, visualize, and share phylogenetic trees with ease.
Acesse a aplicação em cladograph.vercel.app
Cladograph is a web-based application that allows users to create, visualize, and share phylogenetic trees. The project started as a Python application (v1), which was later rewritten using Electron. The current version is a modern web application with a Next.js frontend and a NestJS backend, providing a more robust and scalable solution.
The main goal of Cladograph is to provide a user-friendly tool for students, teachers, and researchers to explore evolutionary relationships between different species.
- v1 (Python): The first version of Cladograph was a desktop application built with Python. It was a complete but limited application.
- Electron (Deprecated): An attempt was made to rewrite the application using Electron to create a cross-platform desktop application. However, this version was never completed.
- Current Version (Web Application): The current and actively developed version is a web application with a Next.js frontend and a NestJS backend. This architecture provides a modern, fast, and scalable platform for the future of Cladograph.
This project has been recognized and awarded at the following science fairs:
To get a local copy up and running, follow these simple steps.
- Node.js: Make sure you have Node.js installed. You can download it from here.
- Yarn: This project uses Yarn as a package manager. You can install it by following the instructions here.
- PostgreSQL: You need a running instance of PostgreSQL. You can download it from here.
-
Clone the repo:
git clone https://github.com/pedrogiroldo/cladograph.git cd cladograph -
Install backend dependencies:
cd apps/backend yarn install -
Install frontend dependencies:
cd ../frontend yarn install
-
Navigate to the backend directory:
cd apps/backend -
Create a
.envfile by copying the example file:cp .env.example .env
-
Edit the
.envfile with your PostgreSQL database connection string:DATABASE_URL="postgresql://USER:PASSWORD@HOST:PORT/DATABASE" -
Run the database migrations:
npx prisma migrate dev
-
Start the backend server:
cd apps/backend yarn start:devThe backend will be running on
http://localhost:3000. -
Start the frontend server:
cd apps/frontend yarn devThe frontend will be running on
http://localhost:3001.
Now you can open your browser and navigate to http://localhost:3001 to use the application.
-
Frontend:
-
Backend:
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
