UpVent / upvent-svelte

UpVent Svelte Frontend - Powered by Fernet Branca.
GNU Affero General Public License v3.0
4 stars 0 forks source link
pocketbase svelte sveltekit website website-template

UpVent Website Source

Please see the copyright part at the bottom of this file! :warning:

GitHub issues GitHub all releases GitHub

Build Status

Node.js CI

Build / Deploy

If you wish to use this repository as a template you'll have to follow these instructions.

Prerequisites

You'll need the following tools to build and run this PWA successfully:

1. Clone and install dependencies

git clone git@github.com:UpVent/upvent-svelte.git
cd upvent-svelte
npm install

2. Create a .env file

You'll need to modify the .env-example file, rename it to .env and fill in the details yourself, alternativeley you can create a .env file yourself at project root level with the following values:

VITE_UPTIME_API_URL = "" # For Uptime Robot users, shown at Footer.svelte component
VITE_DBASE_URL = "https://api.domain.com/" # Your API base URL
VITE_DBASE_USER = "user@email.com" # Your DB / BaaS username for supabase, firebase or pocketbase
VITE_DBASE_USER_PASSWORD = "UpVentRocks!" # The password for the user mentioned above
# Social media links
VITE_FACEBOOK_LINK = ""
VITE_TWITTER_LINK = ""
VITE_INSTAGRAM_LINK = ""
VITE_LINKEDIN_LINK = ""
VITE_GITHUB_LINK = ""
VITE_ASCARD_LINK = ""
VITE_WHATSAPP_LINK = ""

3. Build

After you've made some changes now you have to build the project.

npm run build && npm ci --prod

4. Deploy

Deployment with the adapter-node WILL cause trouble for you if you decide to deploy outside a PaaS / Docker container.

Deploy at your own liking we currently know 3 ways to deploy your SvelteKit app behind an NGINX reverse-proxy:

  1. Use our deploy.sh and act as your own CI/CD.
  2. Use Ansible (WIP).
  3. Follow a blog post in spanish we cannot link to because it contains strong language.

If you wish to deploy behind a reverse proxy you'll need to upload the following files and directories:

For simple cases we are providing a deploy.sh script to deploy your Sveltekit app to NGINX without much hassle (it does need some script configuration).

If you have any doubts please run deploy.sh --help or deploy.sh -h and read the full help message. If you are still in need of help feel free to open an issue or a discussion using the proper GitHub tabs up there.

We do not encourage the usage of this script, if you have a CI/CD service at your disposal use it. If not, this should suffice to be your own CI/CD. We might provide an Ansible playbook for this in the future.

Description

This is the source code for the UpVent's website under upvent.codes.

Development occurs on the master branch and new branches are only opened when adding critical/unstable features. The main site is published by upvent making a fork of this project and adding some post-update commits in order to make deployment more secure.

:warning: PLEASE CONSIDER THESE THINGS FIRST

1- Some content is in Spanish(MX), translate it at your own needs. The code itself is in English, only pertinent strings like html tag contents are in spanish.

2- There's dummy content in master branch, if you cannot afford to have experimental features in production, please use the release tags.

Development Stack

Philosophies

Security

For any serious security related issues, please do not open a public GitHub issue. Instead, email them to our issues email. We provide a quick response of security reports within 24 hours and should apply patches ASAP (also, feel free to contribute a fix for the issue).

Contributing

If you wish to continue please look at our ISSUES tab, open a new Issue to request a feature or report a bug.

If this work helped you somehow, please leave us a :star: it will mean so much to us :heart:

:star: Contributors

These people have helped in the development of this frontend repo, some with code, others with ideas, feedback and testing. We strongly encourage you to give them a Follow or :star: their repositories to show some love to them. We know that will help them a lot:

Copyright

The source code for this page is licensed under the Affero General Public License (GNU) version 3. Except where otherwise noted, written work, blogs, opinions, and some visual content is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives License. 4.0 International (CC BY-NC-ND 4.0)

The AGPL differs from the other GNU licenses in that it was created for network software. You can modified versions if you keep track of the changes and the date they were made. As usual with the GNU licenses, you must license derivatives under the AGPL. It provides the same restrictions and freedoms as GPLv3 but with an additional clause that the source code must be distributed together with the web publication. Since websites and services are never distributed in the traditional sense, the AGPL is the GPL of the web.

With the CC BY-NC-ND 4.0 license you must give proper credit, provide a link to the license, and indicate if changes have been made. You may do so in any reasonable way, but not in any way that suggests that you or your use is endorsed by Licensor. You may not use the material for commercial purposes. If you remix, transform, or build on the material, you will not be able to separate the modified material.