Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aureleoules/core
Backpulse's core. Backpulse is an API Based CMS. Build you own website without worrying about the content administration system.
https://github.com/aureleoules/core
api api-based backpulse cms golang headless-cms
Last synced: 3 months ago
JSON representation
Backpulse's core. Backpulse is an API Based CMS. Build you own website without worrying about the content administration system.
- Host: GitHub
- URL: https://github.com/aureleoules/core
- Owner: aureleoules
- License: mit
- Archived: true
- Created: 2019-04-03T16:17:19.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-03-29T16:18:29.000Z (over 4 years ago)
- Last Synced: 2024-06-28T02:43:34.641Z (5 months ago)
- Topics: api, api-based, backpulse, cms, golang, headless-cms
- Language: Go
- Homepage: https://backpulse.aureleoules.com
- Size: 96.7 KB
- Stars: 68
- Watchers: 6
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[![forthebadge](https://forthebadge.com/images/badges/made-with-go.svg)](https://forthebadge.com)
[![forthebadge](https://forthebadge.com/images/badges/powered-by-netflix.svg)](https://forthebadge.com)[![Donate](https://img.shields.io/badge/Donate-Crypto-blue.svg)](https://commerce.coinbase.com/checkout/b4d64264-dda8-41d0-9f15-0843f969fa79)
[![Donate](https://img.shields.io/badge/Donate-Patreon-orange.svg)](https://www.patreon.com/backpulse)
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.me/aureleoules)![Backpulse](https://files.backpulse.io/backpulse.png#cache2 "Backpulse.io")
# Backpulse core
Backpulse is an API Based / Headless CMS.
Your site's content is accessible directly via our RESTful API, on any web framework and any device.## Installation
With a correctly configured Go toolchain:
```bash
go get github.com/backpulse/core
```## Build&Run from source
With a correctly configured(go version >=go1.11) Go toolchain:
```bash
git clone https://github.com/backpulse/core
cd core
make build
./backpulse
```## Docker Build&Run
```bash
docker build -t .
docker run -d --link :mongodb
```
or docker run in custom environment
```bash
docker run -d \
--link :mongodb \
--env MONGODB_URI=mongodb://mongodb:27017 \
--env DATABASE=backpulse \
```## Usage
First, you need to create a config.json using the `config.json.template` file.
* **URI** : MongoDB server address (_mongodb://..._)
* **Database** : MongoDB database name
* **Secret** : A secret key to encrypt JWT
* **GmailAddress** : A gmail address if you wish to send confirmation emails
* **GmailPassword** : The password associated with the gmail address obviously
* **StripeKey** : Your Stripe Key if you wish to integrate Stripe
* **BucketName** : Your Google Cloud Storage Bucket's name to store user files (images, binaries, plain text...)You can also pass all these variables as environment variables:
* MONGODB_URI
* DATABASE
* SECRET
* GMAIL_ADDRESS
* GMAIL_PASSWORD
* STRIPE_KEY
* BUCKET_NAME**Note**: If a `config.json` file is found, it will override environment variables.
Then, you need to get your Google Service Account Key:
* Go to this [page](https://console.cloud.google.com/apis/credentials/serviceaccountkey).
* Create a new account with the Project -> Owner role.
* Download your private key as JSON.
* Move it to the root of this project.
* Rename it `google_credentials.json`.You can also pass the content of this json file as an environment variable:
GOOGLE_APPLICATION_CREDENTIALS = `{"type": "service_account", "project_id": "projectID", ...}`
You're all set to run **Backpulse**!
```bash
go build -o backpulse && backpulse
```**Note**: By default Backpulse runs on port 8000, but can be overridden with the `PORT` environment variable.
## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.## License
[MIT](https://github.com/backpulse/core/blob/master/LICENSE) © [Aurèle Oulès](https://www.aureleoules.com)