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
Bootstrapping (and using Foreman to run all the things)
Your first time here? Just run:
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
Running with Docker
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
Running the application
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.
Accessing Recaptcha Variables
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.
Accessing Facebook Variables
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
- 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
Accessing Github Variables
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
Save and after saving you will have the keys at the beginning of the page.
Accessing Twitter Variables
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
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.
Accessing Google Variables
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.
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
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.