Giter Club home page Giter Club logo

thullo's Introduction

Logo Thullo

Build Status Domain Build Status Front Build Status Express Netlify Status

Thullo : A Trello Clone

This project was made for a challenge Thullo by devChallenges.io.

Requirements

๐Ÿš€ How to work on the project ?

  1. First you have to clone the repository

    git clone https://github.com/Fredkiss3/thullo.git
  2. Then, Install the dependencies :

    pnpm install
  3. Launch the docker-compose server to start a mongodb server :

    docker-compose up -d
  4. Rename the .env.example located in packages/express/src/config to .env.local And change the file to your needs, by default you have :

    # server
    PORT = 3031
    
    # mongo database
    MONGO_URI='mongodb://root:password@localhost:27017/thullo?authSource=admin'
  5. And launch the project :

    pnpm run dev --parallel

    The express API will be available at http://localhost:3031 and the frontend client at http://localhost:3000.

  6. Open the source code and start rocking ! ๐Ÿ˜Ž

๐Ÿง Project structure

A quick look at the top-level files and directories you will see in this project.

.
โ”œโ”€โ”€ .github/
โ”‚    โ””โ”€โ”€ workflows
โ”‚        โ”œโ”€โ”€ express.yml
โ”‚        โ”œโ”€โ”€ domain.yml
โ”‚        โ””โ”€โ”€ front.yml
โ”œโ”€โ”€ packages/
โ”‚   โ”œโ”€โ”€ domain
โ”‚   โ”œโ”€โ”€ express
โ”‚   โ”œโ”€โ”€ adapters
โ”‚   โ””โ”€โ”€ front
โ”œโ”€โ”€ .prettierrc
โ”œโ”€โ”€ jest.config.json
โ”œโ”€โ”€ lerna.json
โ”œโ”€โ”€ pnpm-lock.yaml
โ””โ”€โ”€ tsconfig.json
  1. .github/: this folder contains the GitHub Actions workflow configuration for Continuous Integration/Continuous Deployment. Given that this project is a monorepo, there is muliples workflows for the different packages, with each one targeting a specific environment :

    1. domain.yml : this workflow is used to test the domain.

    2. express.yml : this workflow is used to deploy the express app to heroku.

    3. front.yml : this workflow is used to test and deploy the frontend app to netlify.

  2. packages/: this folder contains the monorepo packages, each package is a sub-folder :

    1. domain : this package contains the domain logic used by the express App

    2. express : this package contains the express API.

    3. adapters : this package contains the implementations of all the interfaces in the domain that the express API will use.

    4. front : this package contains the frontend app written in React.

  3. .prettierrc: this file contains the configuration for prettier to enable autoformatting.

  4. jest.config.json: this file contains the configuration for Jest, that are used by the all the underlying packages

  5. lerna.json: this file contains the configuration for the monorepo.

  6. pnpm-lock.yaml: this file contains the dependencies lock for the monorepo.

  7. tsconfig.json: this file contains the configuration for typescript, that are used by the all the underlying packages

thullo's People

Stargazers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.