Skip to content

Latest commit

 

History

History
139 lines (108 loc) · 3.5 KB

README.md

File metadata and controls

139 lines (108 loc) · 3.5 KB

Share your quizz

Free web application allowing you to create quizzes (multiple choice questions) and play online games.

I invite people wishing to use the application to encourage an implementation by you. Without money entry and in case of large volumes I will limit the use of my implementation on Share-your-quizz.ch.

Please read the licence and comply with it.

Contents

Technologies used

Technologies backend

Technologies frontend

Technologies api

Author

netanonima (Flavio Bertolini)

Donate

If you like this project and wish to say thanks - I'm always open to a coffee! ☕

Buy Me A Coffee

License

LICENCE

Installation

  • Clone the repository
  • Install mysql or mariadb and create a database called share_your_quizz
  • Install dependencies
      cd backend
      npm install
      cd ../frontend_angular
      npm install
  • Install ffmpeg (backend side)
    • On linux
        sudo apt install ffmpeg
    • On windows
        choco install ffmpeg
  • get the ffmpeg path
    • On linux
        which ffmpeg
    • On windows
        where ffmpeg
      It's usually C:\ProgramData\chocolatey\lib\ffmpeg\tools\ffmpeg\bin
  • Change your JWT secret by a strong one in backend/src/auth/constants.ts
  • Copy 'backend/.env-lock' to 'backend/.env' and set your values
  • Copy 'backend/src/app.module.ts-lock' to 'backend/src/app.module.ts' and set your values
  • Copy 'frontend_angular/src/app/constants.ts-lock' to 'frontend_angular/src/app/constants.ts' and set your values
  • Launch the backend
    • For development
      cd backend
      npm run start:dev
    • For production
      npm run build
      cd dist
      node main.js
  • Set your frontend constants in frontend_angular/src/app/constants.ts
  • Launch the frontend
      cd frontend_angular
      npm i
    • For development
      ng serve
    • For production
      ng build --localize
  • Open your browser and go to localhost:8080
  • For production you may need this .htaccess on apache server
      RewriteEngine On
      RewriteBase /
    
      RewriteCond %{HTTP:Accept-Language} ^(de|es|fr|it) [NC]
      RewriteRule ^$ /%1/ [L,R]
    
      RewriteCond %{HTTP:Accept-Language} !^(de|es|fr|it) [NC]
      RewriteRule ^$ /en/ [L,R]
    
      RewriteRule ^([a-z]{2})/.*$ $1/index.html [L]

Usage without installation

share_your_quizz

I reserve the right to limit or even delete the use of this implementation. Favor a custom implementation.

Adding translations

ng extract-i18n --format=json --out-file src/locale/messages.json