CroCompass is a dynamic web platform designed to serve as a comprehensive guide for tourists and locals alike, showcasing restaurants, attractions, and unique spots across Croatia. Developed specifically for the TVZ MC2 competition, this application allows different types of users, such as administrators, advertisers, and general users, to interact with the platform in ways tailored to their roles.
- User Authentication: Secure login and registration system with different roles (Admin, Advertiser, User).
- Dynamic Content Management: Admins can manage users and advertisements; Advertisers can create and manage their advertisements.
- Interactive Maps: Users can explore various attractions through an integrated mapping system.
- Reviews and Ratings: Users can post reviews and rate attractions and establishments.
- Responsive Design: Optimized for various devices, ensuring a seamless user experience.
- Frontend: React (with React-Bootstrap for styling)
- Backend: ASP.NET Core Web API
- Database: SQLite (for development), configurable for production environments
- Authentication: ASP.NET Identity for user management and JWT for authentication
- API Testing: Postman
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- .NET 5.0 SDK
- Node.js
- A modern web browser
-
Clone the repository
git clone https://github.com/yourgithubusername/crocompass.git cd crocompass
-
Set up the backend
Navigate to the backend directory and restore the .NET dependencies.
cd CroCompassBackend dotnet restore
Run the application.
dotnet run
-
Set up the frontend
Navigate to the frontend directory and install the npm packages.
cd ../CroCompassFrontend npm install
Start the React application.
npm start
The application should now be running on
http://localhost:3000
.
Ensure all configurations in appsettings.json
and environment-specific settings are correctly set according to your development environment.
Once the application is running, you can register as a new user or log in using predefined credentials if you've set up seed data. Explore the functionalities based on the user role.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Mario Žitković - [email protected]
Borna Jurak - [email protected]
Project Link: https://github.com/MarioZitko/CroCompass