A new way to create web applications using go and sdf framework.

Contributors Forks Stargazers Issues MIT License LinkedIn


SDF GO

A new way to create web applications using go and sdf framework
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact

About The Project

Sdf is firstly created for my favorite web language, php! But in time I've looked go, c#, python (flask) and more languages for web just in case I need them. Then I noticed the power of go. I started this project like 2 days ago 30/01/2022 and it is now published under development version v1.0.

It is not finished or not available for production!

I will work on this project. This project is now my main focus.

(back to top)

Built With

Most of the parts are created from scratch. Soon this framework will be independent

(back to top)

Getting Started

Please follow steps bellow.

Prerequisites

This is an example of how to prepare your application to use the sdf and how to install requirements of sdf.

  • Git
  • Go v1.17

Installation

  1. Clone the repo

    git clone https://github.com/devsimsek/sdf-go.git
  2. Install Required Go Packages

    go get
  3. Enter your session secret in .env

    SESSION_SECRET='ENTER YOUR API';
    
  4. Create Your Example Handler

      package handlers
      import (
          "SDF/core"
          "fmt"
          "net/http"
      )
      
      func init() {
           core.RegisterHandle("/", homeHandler, "GET")
         }
    
      func homeHandler(w http.ResponseWriter, r *http.Request) { 
           // Load View
    	         _, err := fmt.Fprintf(w, core.LoadView("views/home.html", core.PageData{
    	             PageTitle: "Home",
    	             PageBody: map[string]interface{}{"version": "v1.0"},
          }))
          core.CheckError(err)
       }

(back to top)

Usage

Just open handlers directory and create a new handler :) You should be good to go :)

For more examples, please refer to the Documentation

(back to top)

Roadmap

  • Create Model Support (Maybe)
  • Create Session Library
  • Create Email Library
  • Create Templating Engine (barebones)
  • CSRF and DDOS protection
  • Integration With sdf-php to sdf-go
  • Release v1.0 Public
  • Support MVC (Maybe)

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Devsimsek - @devsimsek - [email protected]

Project Link: https://github.com/devsimsek/sdf-go

(back to top)

Owner
Metin Simsek
I am young self taught developer from turkey. I worked on most of the languages out there and choose web development + devops for my career.
Metin Simsek
Similar Resources

Short examples of common anti-patterns in Go Web Applications.

Go Web App Anti-Patterns This repository contains short examples of common anti-patterns in Go Web Applications. For complete description, see Common

Dec 31, 2022

staticfiles is an asset manager for a web applications written in Go.

Overview staticfiles is an asset manager for a web applications written in Go. It collects asset files (CSS, JS, images, etc.) from a different locati

Dec 7, 2022

Create a demo RESTful application using Golang

Instructions The goal of this exercise is to create a demo RESTful application using Golang. The Task In this task, we are building backend of an appl

Oct 30, 2021

New GF (Go Frame) based back office management system

New GF (Go Frame) based back office management system

GFast-V2 平台简介 基于全新GF(Go Frame)的后台管理系统 前端采用ruoyi-ui 、Vue、Element UI。 阿里云优惠券:点我进入,腾讯云优惠券:点我领取 本项目由奇讯科技团队开发。 特征 高生产率:几分钟即可搭建一个后台管理系统 模块化:单应用多系统的模式,将一个完整的

Dec 31, 2022

Extract structured data from web sites. Web sites scraping.

Extract structured data from web sites. Web sites scraping.

Dataflow kit Dataflow kit ("DFK") is a Web Scraping framework for Gophers. It extracts data from web pages, following the specified CSS Selectors. You

Jan 7, 2023

記帳-PWA-web-app (Bookkeeping-PWA-web-app)

記帳-PWA-web-app (Bookkeeping-PWA-web-app)

GoKeep (bookkeeping web app) 記帳-PWA-web-app (Bookkeeping-PWA-web-app) demo link : https://bookkepping.herokuapp.com/ 測試用帳密 : tester002 , tester002 (亦可

Jan 31, 2022

log4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web servicelog4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web service

log4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web servicelog4jScanner: provides you with the ability to scan internal (only) subnets for vulnerable log4j web service

log4jScanner Goals This tool provides you with the ability to scan internal (only) subnets for vulnerable log4j web services. It will attempt to send

Jan 5, 2023

Web terminal - A (unsafe) technical demo to export a shell to web browser

Web terminal - A (unsafe) technical demo to export a shell to web browser

Web Terminal A (unsafe) technical demo to export a shell to web browser. This pr

Dec 27, 2022

Go-web-scaffold - A simple scaffold for building web app quickly

Go-web-scaffold A simple scaffold for building web app quickly. features This sc

Jan 21, 2022
Using golang framework (Gin) to create a web-application

News feeder Using golang framework (Gin) to create a web-application. This simpl

Aug 22, 2022
Give developers an easy way to create and integrate bank processing into their own software products
Give developers an easy way to create and integrate bank processing into their own software products

Community · Blog moov-io/bankcron Moov's mission is to give developers an easy way to create and integrate bank processing into their own software pro

Sep 27, 2022
ging is a tool for create gin web framework development templates

ging ging is a tool for create gin web framework development templates This tool is for the freshmen who want to learn golang and gin web framework, i

Jan 15, 2022
A web app that displays a new random famous quote every day (UTC timezone) and allows people to like/unlike the quote

Intro A web app that displays a new random famous quote every day (UTC timezone) and allows people to like/unlike the quote. The app display the curre

Dec 8, 2021
It is a clone of the CRUD operations on Instagram which can create, get, create posts and get the post along with pagination
It is a clone of the CRUD operations on Instagram which can create, get, create posts and get the post along with pagination

Instagram-API-Clone It is a basic version of a RESTful API based on Instagram where we can create user, get the users, create post and get post and ge

Jan 25, 2022
Example golang using gin framework everything you need, i create this tutorial special for beginner.

Golang Gin Framework Fundamental Example golang using gin framework everything you need, i create this tutorial special for beginner. Feature Containe

Dec 16, 2022
GoCondor is a golang web framework with an MVC like architecture, it's based on Gin framework
GoCondor is a golang web framework with an MVC like architecture, it's based on Gin framework

GoCondor is a golang web framework with an MVC like architecture, it's based on Gin framework, it features a simple organized directory structure for your next project with a pleasant development experience, made for developing modern APIs and microservices.

Dec 29, 2022
Simple web app using Go and Gin framework

go-gin-app Simple web app using Go and Gin framework Golang 과 Gin 프레임워크를 사용한 간단한 웹 앱 How to get Started Install Gin and have Go installed on your syst

Oct 18, 2021
REST API for a shoe store using Go and Gin Web Framework

REST API for a shoe store using Go and Gin Web Framework This API uses a local PostgreSQL database that's set through the /gopostgres/driverConfig.go

Dec 26, 2021
Colonies is a generic framework for implementing next-generation distributed applications and systems
Colonies is a generic framework for implementing next-generation distributed applications and systems

Colonies is a generic framework for implementing next-generation distributed applications and systems. It can be used as a building block for grid computing or edge computing, e.g. implement a meta operating system or cloud-of-cloud platform that combines many execution environments into a new virtual computing environment that can be controlled using an single unified API.

Nov 14, 2022