BulkApi is a community buying platform where consumers can come together to purchase goods in bulk at reduced prices. If the minimum purchase quantity is not met by the specified date, both consumers and producers can backout. Until then, they are "locked in".
BulkApi also aims to reduce delivery cost. Buyers are encouraged to select a community pick up point to share the costs amongst them.
Sellers have the discretion to set their own discount schemes, ensuring that sellers can offer a discount that is optimal and sustainable for their business.
Go to https://bulk-aspnet.azurewebsites.net
- username: TestConsumer
- password: TestPassword
- username: TestProducer
- password: TestPassword
- React, Redux Thunk, JS, Typescript, Material UI for the front end
- ASP.NET Core, Identity, C# for the backend
- SQL Server for the database
- JWT Authentication and Authorization
- REST API for CRUD operations
- Docker support
cd docker
docker-compose build
docker-compose up -d
docker ps
# omit the "winpty" if you are not using git bash
winpty docker exec -it mssql opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '28DockerPass!' -Q "RESTORE DATABASE [Bulk] FROM DISK = '/var/opt/mssql/backup/Bulk.bak' WITH MOVE 'Bulk' TO '/var/opt/mssql/data/Bulk.ndf', MOVE 'Bulk_Log' TO '/var/opt/mssql/data/Bulk_log.ldf' "
Unfortunately, the above command cannot be integrated into the Dockerfile or the docker-compose file. The command would have been executed before the mssql server is up.
In your browser, go to http://localhost:3000
- Database: Run the latest sql script
- Backend Api: Run the ASP.NET Core application
- Check that
Extensions/ServiceCollectionExtensions.AddDbContextExtension()
uses the variablelocalConnectionString
- Check that
- Frontend: Run
npm install
and thennpm start
- Check that
services/UtilService.getApiUrl()
returns the variablelocalhost
- Check that