Skip to content

sergiokapone/SnapshotExchange

Repository files navigation

The project is available online at https://snapshotexchange.onrender.com/views/dashboard

drawing

Version License

Table of contents

Using Technologies

Language FastAPI Pydantic Jinja2 Language asyncio SQLAlchemy Alembic PostgreSQL Redis

Description

Our app allows users to upload, edit and delete their photos, as well as interact with each other by commenting and rating photos. Users also have the ability to create unique QR codes for their photos and share them with other community members, making photo sharing even more convenient and fun. They can also chat and discuss each other's photos and share the experience of processing photos with the help of Cloudynary service.

Project Installation

Local Installation

To manage project dependencies, pipenv is used.

  • Make sure you have pipenv installed

  • Clone the repository git clone https://github.com/sergiokapone/SnapshotExchange.git

  • To install the dependencies, use the pipenv install or pipenv sync command.

Detailed steps in your terminal a following:

git clone https://github.com/sergiokapone/SnapshotExchange.git
cd SnapshotExchange
pipenv install
python main.py

DockerHub

Our project can also be found at DockerHub. To launch the application, you can use the command:

docker run -p 8000:8000 sergiokapone/snapshopexchange

Implementation

Once the application is running locally, you can browse to run it on your local host using the following links:

For comfortable viewing of JSON respone in your browser we recommend to install the extension for Google Chrome JSON Viewer or JSON Formatter (according to your taste)

Admin Dashboard

We also tried to implement an Admin Dashboard for our application to conveniently manage and control its content, settings and users.

API routes

The main goal of application is primarily designed to implement a REST API, which plays a key role in ensuring efficient interaction between frontend developers (React, View, Angular) and our service.

All documentation on interacting with our API is available at the following links:

Chat

Also our app is equipped with a chat for short messaging via websocket. The chat is available at the link:

Information for Developers

Our project is equipped with Sphinx documentation, which you can find at https://sergiokapone.github.io/SnapshotExchange/. The documentation may be useful to other developers who can use it to develop our project.

License

This project is licensed under the terms of the MIT License.

MIT License

Copyright © [FastTrack Codes]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.