Skip to content

atlp-rwanda/e-comm-team-axel25-bn

Repository files navigation


Coverage Status CircleCI


Table of Contents
  1. About The Project
  2. Live Demo
  3. Getting Started
  4. Contributing
  5. License
  6. Contact
  7. Acknowledgements

About The Project

This is an e-commerce backend app

Folder Structure

.
├── /build                   # Compiled files (ignored)
├── /docs                    # Documentation files
├── /src                     # Source files
├── /test                    # Automated tests
├── .env                     # Environment variables
├── .gitignore
├── nodemon.json             # Configuration for nodemon as a dev-dependency
├── package.json
├── pnpm-lock.yaml
├── README.md                # Documentation
└── tsconfig.json

src

./src
├── /controllers                   # Functions fired when hitting a route
├── /db
│   ├── /schemas                   # Schema definitions
│   └── config.ts                  # db connection configuration
├── /interfaces                    # For Ts declarations
├── /middleware
│   ├── /auth
│   └── /validation
├── /routes                        # All endpoints
├── /services                      # Communication with the db
├── app.ts                         # Configuration for required packages
└── server.ts                      # Entry point

Folder structure

This is the structure for any folder. The same applies for next folders.

./folder
├── index.ts                     # Handles all exports of that folder
└── file.ts                      # All its exports, but handled by its index.ts

Tech Stack

  • Node.js
  • Typescript
  • Express
  • Postgres DB
  • Sequelize ORM

Live Demo

Not yet live 🙂

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • Node.js
  • Package manager. We are using pnpm
  • Postgres DB

If you are wondering why pnpm, take a look at why

Installation

  1. Clone the repo 🌀
    git clone https://github.com/atlp-rwanda/Team-Axel-E-comm-backend.git
  2. Install packages 📦.
    pnpm install
  3. Create a .env file and add the following keys ,or, just grab the content in .env.example :
     PORT=
     DB_USER=
     DB_HOST=
     DB_NAME=
     DB_PASSWORD=
     DB_PORT=
  4. Start your local development server
pnpm dev

Contributing

To make contributions...

  1. Clone the repo
  2. Create your Feature Branch (git checkout -b ft-some-feature)
  3. Commit your Changes (git commit -m 'ft: add some feature')
  4. Push to the Branch (git push origin ft-some-feature)
  5. Open a Pull Request

License

Distributed under the MIT License.

Contact

You can reach out to the team lead, Alex

Acknowledgements

  • The Andela Team

Releases

No releases published

Packages

No packages published

Contributors 9