Vaquita is an innovative crowdfunding platform that uses blockchain technology to facilitate secure and transparent fundraising. Inspired by the Argentine lunfardo phrase "Hagamos una vaquita" (let's chip in), the project aims to combine the ease of crowdfunding with the flexibility and security of cryptocurrencies.
Vaquita aims to provide an easy-to-use platform for projects seeking funding through cryptocurrency contributions. It offers an intuitive interface for both project creators and donors, backed by smart contracts to ensure transparency and security of transactions.
- Project Creation: Users can create crowdfunding campaigns with detailed descriptions, goals, and deadlines.
- Cryptocurrency Contributions: Support for various cryptocurrencies to contribute to projects.
- Transparency and Security: Use of smart contracts to manage contributions and ensure compliance with terms.
- Intuitive Interface: User-friendly frontend design with React for a smooth user experience.
- User Management: Secure authentication and authorization using JWT.
- Project Visualization: Listing and viewing of active, ongoing, and completed projects.
The project uses a microservices architecture for the backend, with a PostgreSQL database for data storage. Smart contracts on the Ethereum blockchain manage contributions and transparency. The frontend application is built with React and communicates with the backend through a REST API.
- Node.js v16 or higher
- PostgreSQL v12 or higher
- Truffle for smart contracts
- Ganache for blockchain testing
git clone https://github.com/franvozzi/vaquita.git
cd vaquita
cd frontend
npm install
cd ../backend
npm install
Copy the example configuration file and adjust the variables:
cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env
Edit the .env files to include your database configuration and API keys.
cd frontend
npm start
cd ../backend
npm start
- Create an Account: Register on the platform to create and manage projects.
- Create a Project: Fill in the project details and publish to receive contributions.
- Contribute to a Project: Browse available projects and contribute with cryptocurrencies.
- Monitor Contributions: Check the status of contributions and project progress.
Contributions are welcome. To contribute to the project, please follow these steps:
- Fork the repository.
- Create a branch for your feature or bugfix (git checkout -b feature/new-feature).
- Make your changes and commit (git commit -am 'Add new feature').
- Push the branch to the remote repository (git push origin feature/new-feature).
- Create a pull request on GitHub.
This project is licensed under the MIT License - see the LICENSE file for details.
Francisco Vozzi - franciscovozzi@outlook.com GitHub: franvozzi Thank you for your interest in Vaquita! We hope you find this cryptocurrency-based crowdfunding platform useful and exciting.
This README.md provides an overview of the project, details on installation and usage, and how to contribute. Be sure to customize any specific details as the project develops.