call4paperz.com is a website for talk proposals, either to your own conference or lightning talks. Users can post talk proposals and they can be voted and commented by the users.
You must set the following environment variables for the system to fully work:
S3_ACCESS_KEY
S3_SECRET_KEY
TWITTER_ACCESS
TWITTER_SECRET
FACEBOOK_ACCESS
FACEBOOK_KEY
GITHUB_CLIENT_ID
GITHUB_SECRET
SECRET_KEY
DEVISE_PEPPER
RECAPTCHA_SITE_KEY
RECAPTCHA_SECRET_KEY
GOOGLE_CLIENT_ID
GOOGLE_SECRET
Your first time here? Just run:
$ bin/setup
It will guide you through the basic dependencies needed to run the application. You can run it, see if it yells at you, fix it... and run it again!
Repeat until all the stuff is in place.
Edit the file .env
generated in the project's root dir and add your keys for
twitter and facebook applications.
Then start the server with the following command:
$ foreman start -f Procfile.development
We strongly encourage Docker usage. With Docker, we can standardize the development environment, quickly rebuilding it whenever necessary without installing anything on the host machine.
A straight forward Dockerfile
based on an official Ruby base image is provided. Also, the Docker Compose configurations provided, help considerably running the Docker commands.
You can have full control of the Docker Compose configs in your development environment, we provide a sample file, and just the environment variables are required.
$ cp docker-compose.override.yml.sample docker-compose.override.yml
After setting up the Docker Compose configuration, to set up the application, you need to run:
$ docker-compose run --rm web bin/setup
Now that all setup steps are done, you only need to run the command below to get the application running:
$ docker-compose up
That's it! Just go to http://localhost:3000.
Access the https://www.google.com/recaptcha/intro/v3.html.
Click on the Admin Console
button.
On the new page, click the +
button and fill in the fields to generate a new site, choose v2 for the captcha type and in domains add 127.0.0.1 and localhost
.
When you click save it will generate your keys.
Access the https://developers.facebook.com/apps/
Click on the Add new app
button.
Fill in the name of the app and your contact email. Then click Create Application ID.
On your app page, click on my left side under Settings -> Basic
.
In this page you need to configure two fields:
- Application domain with
localhost
- In the site session the site URL field with
http: // localhost: 3000
, where 3000 is the port used to start the Rails application on your computer. - Feel free to fill in the other fields, but these two are the main ones.
Configuring the fields on the same page will find the application ID as the FACEBOOK_ACCESS
variable and the application secret key as the FACEBOOK_KEY
variable.
Access the https://github.com/settings/apps
Click on the New Github App
button.
Fill out the form with app name, description, website URL. In User authorization callback URL and Webhook URL
fill in with http://localhost:3000/auth/github/callback
.
Save and after saving you will have the keys at the beginning of the page.
Access the https://developer.twitter.com/en/apps
Click on the Create an app
button.
Follow the step-by-step twitter requesting the information you request if you have no apps created. If you have already been verified by Twitter the page will generate a new app.
Fill in all fields like app name, description, website URL. In Callback URLs
fill in with http://localhost:3000/auth/twitter/callback
. In Allow this application to be used to sign in with Twitter
enable Enable Sign in with Twitter
.
Save and after saving go to the Keys and tokens
tab to access the keys.
Access the https://code.google.com/apis/console/
Click on the Create project
button.
Fill in a name and save.
When you save, click on my hanburger and choose API and Services -> Credentials
.
In the credentials screen, click the Create Credentials -> OAuth Client ID
button.
Click the Set up consent screen
button to create the app.
Fill out the form and after saving you will be redirected to choose the type of app. Choose the first one that is a web application.
Enter the name and the authorized redirect URIs
fill in with http://localhost:3000/auth/google_oauth2/callback
.
Once completed, click create and you will be redirected to the page with the keys.
To contribute to call4paperz, submit a pull request (preferably in a feature branch), with tests if possible. If you have any doubts, just bug gustavokloh.
Also, please make feature branches. For instance, if you add a new feature, create a feature branch called "my-awesome-feature". That helps reviewing pull requests, specially if you have unrelated commits.
Maintenance is done by gustavokloh.
- Anderson Leite (no longer active)
- Douglas Campos (no longer active)
- Vinicius Baggio Fuentes (no longer active)
We have a few awesome contributors that you can take a look here: https://github.com/call4paperz/call4paperz/graphs/contributors
call4paperz uses the MIT license. Please check the LICENSE file for more details.