Skip to content

wzslr321/flutter_web_fullstack_boileplate

Repository files navigation

Dockerized Flutter(web) + Golang(Gin) + PostgreSQL(with GORM) + Redis --> Template


This repository is a fully dockerized application, which by default is a web app, but modyfing Dockerfiles lets to run it on mobile device too. Front-end is written in Flutter , Back-end in Golang with Gin framework. Databases are PostgreSQL (with GORM) and Redis ( Redigo ). Reverse proxy with Nginx . It contains simple CRUD functions for both, Postgresql and Redis. Back-end is finished, Front-end has only fetch functions implemented.



Found it useful? Want more updates?

Show your support by giving a ⭐



How to launch it locally?

Note the difference in containers name on the video - fggp was updated to flutter_web_fullstack_boilerplate

You can also ue instructions below.


1. Make sure that you have docker and docker-compose installed on your machine.


2. Clone the repository to the folder of your choice, by executing: git clone hhttps://github.com/wzslr321/flutter_web_fullstack_boileplate.git in the console.


3. Navigate to "/" path of cloned repository. To ensure that you are in a right place, run ls. Outpout should look like this:

LICENSE README.md all_lint_rules.yaml analysis_options.yaml app data docker-compose.yml env nginx server

4. Run : docker-compose up --build in the console.


5. Wait for the docker installation to complete. It probably is going to take some time, depending on your internet connection.


When the installation will be finished, you should see this output: img


Now just head to the http://0.0.0.0/#/ in the browser too see the website!

Project tree ( without meaningless files)

|├── all_lint_rules.yaml
├── analysis_options.yaml
├── app
│   ├── 
│   ├── assets
│   │   ├── fonts
│   │   └── images
│   ├── Dockerfile
│   ├── lib
│   │   ├── components
│   │   │   └── form
│   │   │       ├── form.dart
│   │   │       └── form_field.dart
│   │   ├── constants.dart
│   │   ├── main.dart
│   │   ├── models
│   │   │   ├── announcements
│   │   │   │   ├── announcement_class.dart
│   │   │   │   └── announcement_list.dart
│   │   │   ├── http_exception.dart
│   │   │   ├── posts
│   │   │   │   ├── post_class.dart
│   │   │   │   ├── post_id_response.dart
│   │   │   │   └── posts_list.dart
│   │   │   └── provider_exception.dart
│   │   ├── providers
│   │   │   ├── announcements_provider.dart
│   │   │   └── posts_provider.dart
│   │   └── screens
│   │       ├── announcements_screen
│   │       │   ├── announcements_screen.dart
│   │       │   └── widgets
│   │       │       ├── announcement_field.dart
│   │       │       └── announcement_item.dart
│   │       ├── home_screen
│   │       │   └── home_screen.dart
│   │       ├── loading_screen.dart
│   │       ├── page_not_found_screen
│   │       │   └── page_not_found.dart
│   │       └── posts_screen
│   │           ├── posts_screen.dart
│   │           └── widgets
│   │               ├── post_field.dart
│   │               └── post_item.dart
│   ├── pubspec.yaml
│   ├── README.md
│   └── web
│       ├── index.html
│       └── manifest.json
├── docker-compose.yml
├── env
│   ├── flutter.env
│   └── postgre.env
├── nginx
│   ├── Dockerfile
│   └── nginx.conf
└── server
    ├── air.conf
    ├── conf
    │   └── app.ini
    ├── database
    │   ├── postgres
    │   │   ├── funcs
    │   │   │   └── posts.go
    │   │   └── postgres.go
    │   └── redis
    │       ├── funcs
    │       │   ├── announcements.go
    │       │   └── majors.go
    │       └── redis.go
    ├── Dockerfile
    ├── main.go
    ├── main_test.go
    ├── models
    │   ├── announcement.go
    │   └── post.go
    ├── routers
    │   ├── api
    │   │   ├── announcements.go
    │   │   └── posts.go
    │   └── router.go
    ├── settings
    │   └── settings.go

About

Full-Stack Flutter website boilerplate with Golang(GIN), PostgreSQL, Redis and Nginx, fully Dockerized

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published