Skip to content

With our portal, we want to support local authorities and merchants. We want to connect merchants with closed stores to their customers. And we want to keep in mind, that not every merchant has a sophisticated digital strategy - or even a homepage.

License

dasistweb-gmbh/downtown

 
 

Repository files navigation

About this project

This is a non-profit project. The portal is an open-source project that was created in collaboration with the Shopware community to help local retailers in this trying time.

It allows local governments, cities, or similar authorities to give local merchants an easy way of keeping in touch with their customers and selling goods and services online.

After installing the project on a web server, local authorities can register within the portal.

After registration and activation by the portal owner, a sub-portal will be automatically created for each local authority. After this step, local retailers can register within their local authority's sub-portal. Next, customers can register and interact with retailers in their area.

Tweet

Goal

At the time this project is created, the COVID-19 pandemic has a serious impact on the economy. Since retail stores are forced to close, they now need new solutions to generate an income.

The portal project is trying to help. It is created to serve the project downtowns.io, but since it is open source anyone is able to set up a a web server and provide the same service as downtowns to their local community.

How it works

A picture is worth a thousand words, so here are some example screen designs of the portal. The text is in german, since the portal was initially developed for the german market.

The registration page

After the registration, the organisation has to be activated by the portal owner. Then these steps follow:

  • An organisation (e.g. a city) registers within the portal
  • Organisations are created as a sales channel
  • Retail stores register within the organisation, internally they are handled as categories
  • Retail stores can use an App to upload products
  • Users (buyers) can browse retail stores and see what’s in stock

This is how the landing page for an organisation or local authority looks:

Landing page for a local authority

And here is an example of a retailer's landing page:

Landing page for a retailer

Technology

How to install

The Portal

Prerequisites: docker, docker-compose, node/npm

⚠️ The docker setup currently only works if your user ID is 1000.
Execute id -u on your terminal to check.

Clone the project:

git clone https://github.com/shopwareDowntown/downtown.git

Change into the project directory, then start the docker containers, add the cache directory and change into the app container:

cd downtown
docker-compose build
docker-compose up -d
docker-compose exec app_server sh

When inside the app container, do a basic install, generate a JWT secret and an App Secret, then exit the container:

bin/console system:install --create-database --basic-setup --force
bin/console system:generate-jwt-secret --force
bin/console system:generate-app-secret # put into docker-compose.yml
exit

The App Secret is only shown on screen, you have to put it manually into the docker-compose.yml, right after - APP_SECRET=.

Then regenerate the containers by re-executing up:

docker-compose up -d

Please note:

  • Administration is available at http://localhost:8000/admin with user admin and password shopware
  • Each sales channel represents an organisation/local authority
  • Merchants show up in categories after registration and activation
  • Merchants register through the separate Angular Merchant Administration described below

You can shut down the portal with this command:

docker-compose down --remove-orphans

The Angular Merchant Administration

Currently there is no docker container available, so you need to start the project using npm.

Change into the directory src/MerchantFrontend. Then install dependencies and run the project:

cd src/MerchantFrontend
npm install && npm run start

After the promt Compiled successfully, the merchant portal is available at http://localhost:4200/.

Please be aware: The registration for organisations is currently not wired up to the portal, it's just a hubspot form, for production use replace it with your own. For new organisations please create a sales channel manually in the portal.

Merchants are able to register and choose a category. To activate a merchant either click on the link in the registration request e-mail or, in case you haven't set up e-mail sending in the portal, do it directly in the database:

docker-compose exec mysql mysql -p # password is root
USE downtown;
UPDATE merchant SET active=1 WHERE email='merchant@email.example';
quit;

Using the UI

Explaining how to use a UI is easier done via video, so here is a tutorial video on how to configure organisations and merchants:

Youtube: Portal tutorial video

Contributing

You have an idea or you found an issue? Please open an issue here: shopwareDowntown/portal/issues Help retailers by contributing to this project.

Contributors

shyim arnoldstoba PaddyS FloBWer JanPietrzyk PascalThesing Kevin Mattutat Andreas Wolf and-wolf oterhaar MalteJanz seggewiss maike93 Maike Sestendrup marcelbrode swDennis Oliver Terhaar xPand4B Carlos Jansen Carlosjan Draykee jakob-kruse lukasrump SebastianFranze Christian-Rades florianklockenkemper niklas-rudde dnoegel Jakob Kruse Luke Wenkers

About

With our portal, we want to support local authorities and merchants. We want to connect merchants with closed stores to their customers. And we want to keep in mind, that not every merchant has a sophisticated digital strategy - or even a homepage.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 44.0%
  • HTML 26.5%
  • CSS 13.6%
  • TypeScript 11.1%
  • JavaScript 4.3%
  • Shell 0.3%
  • Dockerfile 0.2%