All Projects โ†’ laragol โ†’ Laragol

laragol / Laragol

Laravel clone in go

Programming Languages

go
31211 projects - #10 most used programming language

Labels

Projects that are alternatives of or similar to Laragol

Laravel And Vue.js Spa Recipe Box
Single Page Application with Laravel 5.4 and Vue.js 2 - Recipe Box
Stars: โœญ 124 (-2.36%)
Mutual labels:  laravel
Vue Toastify
๐Ÿ”ฅ Simple, extendable, dependency free notification plugin. ๐Ÿ”ฅ
Stars: โœญ 126 (-0.79%)
Mutual labels:  laravel
Xblock Kernel
XBlock - ๅผ€ๅ‘ๆ–‡ๆกฃ
Stars: โœญ 127 (+0%)
Mutual labels:  laravel
Php Ddd Example
๐Ÿ˜๐ŸŽฏ Hexagonal Architecture + DDD + CQRS in PHP using Symfony 5
Stars: โœญ 1,960 (+1443.31%)
Mutual labels:  laravel
Laravel Littlegatekeeper
Protect pages from access with a universal username/password
Stars: โœญ 125 (-1.57%)
Mutual labels:  laravel
Midia
Simple Media manager for your Laravel project
Stars: โœญ 126 (-0.79%)
Mutual labels:  laravel
Coding
่ง†้ข‘ไปฃ็ 
Stars: โœญ 124 (-2.36%)
Mutual labels:  laravel
Laravel Docker K8s
Running Laravel project using Docker and Deploying using Kubernetes
Stars: โœญ 127 (+0%)
Mutual labels:  laravel
Voyager
Voyager - The Missing Laravel Admin
Stars: โœญ 10,801 (+8404.72%)
Mutual labels:  laravel
Querybuilderparser
A simple to use query builder for the jQuery QueryBuilder plugin for use with Laravel.
Stars: โœญ 126 (-0.79%)
Mutual labels:  laravel
Docker Octobercms
Dockerized October CMS: PHP, Composer, October core and dependencies
Stars: โœญ 125 (-1.57%)
Mutual labels:  laravel
Report
Report management package in PHP that aims to help you export information in a variety of formats
Stars: โœญ 125 (-1.57%)
Mutual labels:  laravel
React Redux Laravel
๐ŸŒŸ Boilerplate blog project for react redux laravel
Stars: โœญ 126 (-0.79%)
Mutual labels:  laravel
Laravelgooglemaps
Laravel Google Maps Package
Stars: โœญ 124 (-2.36%)
Mutual labels:  laravel
Laravel Blog Api
laravel+vue ไธชไบบๅšๅฎข๏ผŒ้กน็›ฎ้ข„่งˆ๏ผš http://www.golang365.com
Stars: โœญ 127 (+0%)
Mutual labels:  laravel
Laravel Nuxt
Build a SPA with Laravel and Nuxt.
Stars: โœญ 124 (-2.36%)
Mutual labels:  laravel
Nova Repeatable Fields
A Laravel Nova field for configuring repeatable sets of fields
Stars: โœญ 126 (-0.79%)
Mutual labels:  laravel
Wxxcx
Laravel5ๅพฎไฟกๅฐ็จ‹ๅบ็™ปๅฝ•่Žทๅ–็”จๆˆทไฟกๆฏๆ‰ฉๅฑ•
Stars: โœญ 127 (+0%)
Mutual labels:  laravel
Laravel Short Url
A Laravel package to shorten urls
Stars: โœญ 127 (+0%)
Mutual labels:  laravel
Testbench
[Package] Laravel Testing Helper for Packages Development
Stars: โœญ 1,705 (+1242.52%)
Mutual labels:  laravel

Laravel clone in go

This is an ongoing experiment to help me learn go by trying to clone the developer experience of Laravel or more accurate Lumen.

I don't know if this is actually a good idea to build applications in this manner. But maybe is a way to present go to PHP or Rails developers.

Features

Roadmap

  • Templating (valyala/quicktemplate)
  • Migration library
  • More Examples
  • Even More Examples
  • Auth
  • Config
  • Commands
  • Package Management (Masterminds/glide)

Folder structure

$ tree src
.
โ”œโ”€โ”€ app
โ”‚   โ”œโ”€โ”€ Helpers
โ”‚   โ”‚   โ””โ”€โ”€ DB.go
โ”‚   โ”œโ”€โ”€ Http
โ”‚   โ”‚   โ”œโ”€โ”€ Controllers
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ CountryController.go
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ UserController.go
โ”‚   โ”‚   โ””โ”€โ”€ routes.go
โ”‚   โ””โ”€โ”€ Models
โ”‚       โ”œโ”€โ”€ Country.go
โ”‚       โ””โ”€โ”€ User.go
โ”œโ”€โ”€ database
โ”‚   โ”œโ”€โ”€ migrations
โ”‚   โ”‚   โ”œโ”€โ”€ 000001_create_countries_table.go
โ”‚   โ”‚   โ”œโ”€โ”€ 000002_create_users_table.go
โ”‚   โ”‚   โ””โ”€โ”€ migrations.go
โ”‚   โ””โ”€โ”€ seeds
โ”‚       โ”œโ”€โ”€ CountriesTableSeeder.go
โ”‚       โ”œโ”€โ”€ UsersTableSeeder.go
โ”‚       โ””โ”€โ”€ seeds.go
โ””โ”€โ”€ main.go

8 directories, 13 files

Docker

docker-compose up

Server is listening on http://127.0.0.1:8080/

Run migrations

docker-compose run api /code/bin/main migrate

Run seeding

docker-compose run api /code/bin/main db:seed

Now you can see it in acion at:

http://127.0.0.1:8080/api/countries

http://127.0.0.1:8080/api/users

Without Docker

Without docker yo need to install go and have MySQL up and running. Create a database "go_api" and root user with password "123456" or modify the file src/app/Helpers/DB.go with your MySQL credentials.

make install
make build-dev
./bin/main migrate
./bin/main db:seed
make dev #linux
make dev-mac #mac
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].