/website

Source code to the Laravel Nigeria meetup website.

Primary LanguagePHPMIT LicenseMIT

Laravel Nigeria meetup

Source code of the Laravel Nigeria meetup website. Developed & Designed by CreativityKills Co.

GitHub license

 

 

Requirements

  • Composer installed on the your machine
  • NPM if you are modifying SCSS, JS or Images
  • Twitter application and credentials, also set the env variables
  • Mailgun or any other mail driver (if you want to test the Contact form use Mailtrap.io)
  • Set up the required ENV variables, the more you set up the better though
    • DB_CONNECTION
    • DB_HOST
    • DB_PORT
    • DB_USERNAME
    • DB_PASSWORD
    • MEETUP_URL_NAME
    • MEETUP_KEY
    • TWITTER_CONSUMER_KEY
    • TWITTER_CONSUMER_SECRET
    • TWITTER_ACCESS_TOKEN
    • TWITTER_ACCESS_TOKEN_SECRET
    • TWITTER_SEARCH_QUERY

 

Installation and Configuration

  • Fork the repository & clone it to your host machine

    $ git clone git@github.com:laravelnigeria/website.git my-directory
  • Change to the root of your application's directory and install dependencies

    $ cd my-directory
    $ composer install
  • Make a copy of the .env.example file and name it .env

    $ cp .env.example .env
  • Generate a new application key using artisan

    $ php artisan key:generate
  • Set up your database and enter the credentials in the .env file

    DB_CONNECTION=
    DB_HOST=
    DB_PORT=
    DB_DATABASE=
    DB_USERNAME=
    DB_PASSWORD=
    
  • Run the database migrations and seed the database

    $ php artisan migrate --seed
  • Get a Meetup API key and set the following environment following environment variables

    MEETUP_URL_NAME="Laravel-Nigeria"    # Or whatever your Meetup URL name is...
    MEETUP_KEY=
    
  • Create a Twitter application and set the following environment variables:

    TWITTER_CONSUMER_KEY=
    TWITTER_CONSUMER_SECRET=
    TWITTER_ACCESS_TOKEN=
    TWITTER_ACCESS_TOKEN_SECRET=
    TWITTER_SEARCH_QUERY="#LaravelNigeria OR @laravelnigeria -filter:retweets -filter:replies"
    
  • If you want to modify the template and css you will need npm installed on your machine. Verify that you have the correct setting in your webpack.mix.js file, especially the BrowserSync section.

    mix.js('resources/assets/js/app.js', 'public/js')
       .sass('resources/assets/sass/app.scss', 'public/css')
       .options({
          processCssUrls: false
       })
       .browserSync({
           // Use Laravel Valet to make sure this matches. From the root of your app, run: $ valet link laravelnigeria
          proxy: 'laravelnigeria.dev'
       });

    Now you can run the npm commands to make your changes:

    $ npm install
    $ npm run watch
  • You're done!

 

Todos

  • Contact us popup
  • All talks page
  • Bug in the slider getting big momentarily
  • Create custom error pages
  • Create error pages for the custom exceptions e.g ApiCommunicationException.
  • Weird "APP_CONTACT_MAIL" bug
  • Contribute page
  • Administrative panel
  • Use web intents to add retweet, reply and like buttons to the tweet section
  • Create a new Twitter application for the Laravel Nigeria application
  • Meetup feedback popup with link to leave reviews
  • Learning track
  • Learning track availability alert form
  • Installation check Middleware
  • Jobs page

 

Contributing

Contribution instructions goes here