/tim_events_api

This repository houses the tim_events_api, frontend devs can consume for event creation

Primary LanguagePython

TIM EVENTS API

Welcome to the TIM EVENTS API project! This API provides endpoints for managing events and related entities such as speakers.

Table of Contents

  1. Getting Started
  2. Installation
  3. Usage
  4. Testing
  5. API Documentation
  6. Contributing
  7. License

Getting Started

To get started with the TIM EVENTS API, follow the instructions below to set up the project locally.

Installation

  1. Clone the repository:

    git clone https://github.com/ezeisraeljohn/tim-events-api.git
    cd tim-events-api
  2. Set up a virtual environment:

    python -m venv .venv
    source .venv/bin/activate  # On Windows use `.venv\Scripts\activate`
  3. Install the dependencies:

    pip install -r requirements.txt
  4. Configure the database:

    Ensure you have a PostgreSQL or MySQL database set up. Update the database settings in the database.py file.

    DATABASE_URL = "postgresql://username:password@localhost/dbname"
  5. Apply the migrations:

    alembic upgrade head
  6. Run the server:

    uvicorn main:app --reload

Usage

Once the server is running, you can interact with the API using tools like Postman or curl.

Testing

You can test the API endpoints using Postman. Import the collection directly using the following link:

Run In Postman

API Documentation

For detailed API documentation, visit the Swagger UI or the ReDoc endpoints provided by FastAPI.

Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository.
  2. Create a new branch: git checkout -b my-feature-branch.
  3. Make your changes.
  4. Commit your changes: git commit -m 'Add some feature'.
  5. Push to the branch: git push origin my-feature-branch.
  6. Create a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.