Skip to content

Commit 14d9a4f

Browse files
committed
chore: readme file & gitignore file updated
1 parent cacebdd commit 14d9a4f

File tree

3 files changed

+125
-4
lines changed

3 files changed

+125
-4
lines changed

.env

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
POSTGRES_USER="postgres"
2+
POSTGRES_PASSWORD="postgres"
3+
POSTGRES_HOST="postgres"
4+
POSTGRES_PORT=5432
5+
POSTGRES_DB="bookly"
6+
7+
DATABASE_URL="postgresql+asyncpg://postgres:postgres@postgres:5432/bookly"
8+
9+
BCRYPT_ROUND=16
10+
11+
MAIL_USER="mailpit"
12+
MAIL_PASSWORD="mailpit"
13+
MAIL_SERVER="mailpit"
14+
MAIL_PORT=1025
15+
MAIL_FROM="no-reply@bookly.serveo.net"
16+
17+
JWT_SECRET="0d6dfd6448e6a1ee48dcb8e090618cf8c37dc046e8169698d22383510c8e70f3"
18+
JWT_SALT="4f20b6d57382c312f523fb5fba4dd25f6efaa766773a20b7e4606b51c9f81b6b"
19+
JWT_ALGORITHM="HS256"
20+
21+
REDIS_URL="redis://redis:6379/0"
22+
FLOWER_USERNAME="flower"
23+
FLOWER_PASSWORD="flower"
24+
25+
DOMAIN="localhost:8000"

.gitignore

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -122,12 +122,12 @@ celerybeat.pid
122122
*.sage.py
123123

124124
# Environments
125-
.env
125+
# .env
126126
.venv
127-
env/
127+
# env/
128128
venv/
129-
ENV/
130-
env.bak/
129+
# ENV/
130+
# env.bak/
131131
venv.bak/
132132

133133
# Spyder project settings

readme.md

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,97 @@
11
# Bookly
2+
3+
Bookly is an innovative online platform designed for book lovers to connect and share their personal collections. Users can easily list the novels and books they own, making them available for others to purchase or borrow. Whether you’re looking to clear space on your bookshelf, discover new reads, or lend a hand to fellow readers, Bookly creates a community-driven marketplace for exchanging books. With a simple and user-friendly interface, Bookly makes it effortless to explore a wide variety of titles, fostering a sustainable and connected book-sharing experience.
4+
5+
## Table of Contents
6+
7+
- [Features](#features)
8+
- [Technologies Used](#technologies-used)
9+
- [Installation](#installation)
10+
- [Usage](#usage)
11+
- [Modules](#modules)
12+
- [API Documentation](#api-documentation)
13+
- [Contributing](#contributing)
14+
- [License](#license)
15+
- [Contact](#contact)
16+
17+
## Features
18+
19+
### Auth
20+
21+
- **User Registration and Authentication:** Users can register, log in, and manage their accounts.
22+
- **Account Activation via Email:** New users receive an activation link to confirm their account.
23+
- **Password Reset Functionality:** Users can request a password reset link via email.
24+
- **Token Blacklisting:** Ensures that tokens are invalidated after logout or expiration.
25+
- **Celery Integration for Background Tasks:** For sending emails and clearing expired tokens and logs.
26+
27+
## Technologies Used
28+
29+
- **Backend Framework:** FastAPI
30+
- **Database:** PostgreSQL
31+
- **Asynchronous ORM:** SQLModel
32+
- **Task Queue:** Celery
33+
- **Broker:** Redis
34+
- **Other Libraries:** Pydantic, Alembic, etc.
35+
36+
## Installation
37+
38+
### Prerequisites
39+
40+
Make sure you have the following installed:
41+
42+
- Python 3.9 or higher
43+
- Docker
44+
- Docker Desktop (optional but recommended)
45+
46+
### Steps
47+
48+
1. **Clone the repository:**
49+
50+
```bash
51+
git clone https://github.com/datarohit/bookly.git
52+
cd bookly
53+
```
54+
55+
2. **Start the application using Docker Compose:**
56+
57+
```bash
58+
docker-compose up -d --build
59+
```
60+
61+
This command will build the necessary services and start the application, including the database, Redis server, and any other dependencies required for the project.
62+
63+
## Usage
64+
65+
- Access the API at `http://localhost:8000/api/v1/`.
66+
- Use the `/auth` endpoints for user authentication and management.
67+
68+
## Modules
69+
70+
### Auth Endpoints
71+
72+
- **Register User:** `POST /auth/register`
73+
- **Activate User:** `POST /auth/activate/{activation_token}`
74+
- **Login User:** `POST /auth/login`
75+
- **Logout User:** `POST /auth/logout`
76+
- **Forgot Password:** `POST /auth/forgot-password`
77+
- **Reset Password:** `POST /auth/reset-password/{password_reset_token}`
78+
- **Get Logged-in User:** `GET /auth/me`
79+
80+
## API Documentation
81+
82+
You can find the full API documentation at `http://localhost:8000/api/v1/docs`, generated using Swagger UI.
83+
84+
## Contributing
85+
86+
Contributions are welcome! Please fork the repository and submit a pull request with your changes. Make sure to follow the code style and conventions.
87+
88+
## License
89+
90+
This project is licensed under the MIT License. See the [LICENSE](https://github.com/DataRohit/Bookly/blob/master/license) file for more details.
91+
92+
## Contact
93+
94+
For any inquiries or feedback, please contact:
95+
96+
- **Rohit Ingole** - [rohit.vilas.ingole@gmail.com](mailto:rohit.vilas.ingole@gmail.com)
97+
- **GitHub:** [datarohit](https://github.com/datarohit)

0 commit comments

Comments
 (0)