dotlah! dotlah!
  • Cities
  • Technology
  • Business
  • Politics
  • Society
  • Science
  • About
Social Links
  • zedreviews.com
  • citi.io
  • aster.cloud
  • liwaiwai.com
  • guzz.co.uk
  • atinatin.com
0 Likes
0 Followers
0 Subscribers
dotlah!
  • Cities
  • Technology
  • Business
  • Politics
  • Society
  • Science
  • About
  • Technology

How To: Create A Flask/API Project In Ubuntu

  • April 6, 2019
Total
0
Shares
0
0
0

Prerequisites

  • Operating System: Ubuntu 16 or Ubuntu 18
  • Python 3.X is installed
  • Python Pip is installed
  • Python Virtual Environment is installed (Optional)

 

Structure Overview

|__ dotlah_flask_api
    |__ api
        |__ res
            |__ __init__.py
            |__ application_res.py
        |__ __init__.py
    |__ app_wsgi.py
    |__ runserver.py
    |__ requirements.txt
    |__ README.md

Replace the dotlah_flask_api directory with the project name of your choice.

Steps

01. Create the necessary directories and files. You can use the following shell script to create it, or manually enter them in the terminal, or create them from another way.

$ cd ~ 
$ nano setup-flask-api.sh 

 

#!/bin/bash
mkdir $1
mkdir -p $1/api/res

touch $1/api/res/__init__.py
touch $1/api/res/application_res.py
touch $1/app_wsgi.py
touch $1/runserver.py
touch $1/requirements.txt
touch $1/README.md

 

02.  Run the setup script.

# FORMAT
$ sh setup-flask-api.sh <project-name-without-space> 

# SAMPLE 
$ sh setup-flask-api.sh dotlah_flask_api 

 

While it is totally safe to create a Project with spaces, it is more of a standard in this case.

 

03. Navigate to the Project directory

# FORMAT 
$ cd <project-name-without-space> 

# SAMPLE 
$ cd dotlah_flask_api 

 

04. Update the necessary Python library/packages by setting the value of the requirements.txt

$ nano requirements.txt 

 

Set the value:

flask 

 

05. (Optional but recommended). Create a virtual environment dedicated to the Flask/API project.

For instructions on how to install and configure virtual environment. See this guide.

# FORMAT 

# SAMPLE 
$ cd dotlah_flask_api 
$ python3 -m venv project-venv 

 

06. Activate the Virtual Environment.

$ source project-venv/bin/activate  

 

07. Install the flask library via Pip using the requirements.txt

(project-venv) $ pip install -r requirements.txt 

 

08. Update the content of runserver.py.

(project-venv) $ nano runserver.py 

 

# -*- coding: utf-8 -*-

# Start Flask with default web server
from api import application

application.run(host='127.0.0.1', port=8888, debug=True)

 

09.  Update the dunder python file.

(project-venv) $ nano api/__init__.py 

 

This imports the res python module, the endpoints will be located at the application_res or other res (Resource) python file.

from flask import Flask 

application = Flask(__name__) 

import api.res.application_res 

 

10.  Update the application_res.py.

(project-venv) $ nano api/res/application_res.py 

 

# -*- coding: utf-8 -*-

from flask import jsonify
from api import application

@application.route('/', methods=['GET'])
def get_app_properties():
name = 'dotlah-flask-api'
version = '0.0.1'

app_properties = \
{
  'name' : name
  , 'version' : version
}

return jsonify(app_properties)

 

Above will create a GET endpoint accessible by the root path, (/).

11. Run the application

(project-venv) $ python runsever.py 

 

It should show something similar

Note that running the application via this way (runserver.py) should only be used on local development. If needed to deploy on a Web Application server, a middleware or WSGI server should be used instead.

 

12. Test the application on the browser or via CURL.

Via Curl (open another terminal session)

$ curl http://localhost:8888

 

Via Browser

http://localhost:8888
Total
0
Shares
Share
Tweet
Share
Share
Related Topics
  • API
  • Flask
  • How To
  • Python
  • Ubuntu
majulah

Previous Article
  • Technology

How To: Configure Python Virtual Environment In Ubuntu

  • April 6, 2019
View Post
Next Article
  • Science

Statistics For Dummies: A Quick Guide On Probability Axioms

  • April 25, 2019
View Post
You May Also Like
View Post
  • Artificial Intelligence
  • Technology

U.S. Ski & Snowboard and Google Announce Collaboration to Build an AI-Based Athlete Performance Tool

  • Dean Marc
  • February 8, 2026
View Post
  • Artificial Intelligence
  • Technology

IBM to Support Missile Defense Agency SHIELD Contract

  • Dean Marc
  • February 5, 2026
Smartphone hero image
View Post
  • Gears
  • Technology

Zed Approves | Smartphones for Every Budget Range

  • Ackley Wyndam
  • January 29, 2026
View Post
  • People
  • Technology

This is what the new frontier of AI-powered financial inclusion looks like

  • dotlah.com
  • January 2, 2026
View Post
  • Artificial Intelligence
  • Technology

How AI can accelerate the energy transition, rather than compete with it

  • dotlah.com
  • November 19, 2025
View Post
  • Gears
  • Technology

Apple Vision Pro upgraded with the powerful M5 chip and comfortable Dual Knit Band

  • Dean Marc
  • October 15, 2025
View Post
  • Gears
  • Technology

Meet Samsung Galaxy Tab S11 Series: Packing Everything You Expect From a Premium Tablet

  • Dean Marc
  • September 4, 2025
View Post
  • Technology

Malaysia’s ‘ASEAN Shenzhen’ needs some significant legal reform to take off — here’s how

  • dotlah.com
  • August 25, 2025


Trending
  • 1
    • Lah!
    MPA Launches Six Next-Generation Patrol Craft To Grow Its Frontline Capabilities
    • August 12, 2020
  • 2
    • Environment
    • People
    The Importance Of Connecting People With Nature In Times Of Social Isolation
    • April 7, 2020
  • 3
    • Technology
    National Library Board And Singapore Press Holdings Extend Free Access Of eNewspapers For Library Patrons Beyond Circuit Breaker
    • June 1, 2020
  • 4
    • Technology
    NTU Singapore Researchers Build Disinfection Robot To Aid Cleaners In COVID-19 Outbreak
    • April 15, 2020
  • 5
    • Lah!
    PUB Water Quality Department Re-designated As WHO Collaborating Centre For Third Consecutive Term
    • February 29, 2020
  • 6
    • People
    • Politics
    • World Events
    Coronavirus: Governments Knew A Pandemic Was A Threat – Here’s Why They Weren’t Better Prepared
    • May 20, 2020
  • 7
    • Lah!
    Sembcorp And Cache Logistics Trust Celebrate Completion Of 8.0 Megawatt-Peak Rooftop Solar Power Project
    • August 5, 2019
  • 8
    • Lah!
    • Technology
    Connecting Our Content Creators To Global Media Players And Audiences Singapore Media Festival 2021: Connecting Our Content Creators To Global Media Players And Audiences
    • October 27, 2021
  • 9
    • Technology
    Google And IMDA Expand Support For Code In The Community With A $2M Grant
    • January 7, 2020
  • 10
    • Technology
    Techblazer Awards Recognises 14 Organisations For Tech Innovation As Singapore Tech Sector Continues To Flourish
    • January 24, 2022
  • Under privatisation, Ukraine came to have a 90% owner-occupancy rate | (c) Sergiy Serdyuk / Alamy Stock Photo. All rights reserved 11
    • Cities
    • World Events
    The war in Ukraine has caused a housing crisis. Here’s how to combat it
    • May 2, 2022
  • 12
    • Lah!
    • Science
    • Technology
    How Imprisoning Algae In Liquid Droplets Can Boost Its Electrical Energy Generation
    • October 21, 2021
Trending
  • 1
    Samsung Unveils Galaxy A57 5G and Galaxy A37 5G, Packing Pro-Level Features at Awesome Price
    • March 25, 2026
  • 2
    The global price tag of war in the Middle East
    • March 24, 2026
  • Samsung Odyssey 3
    Samsung Showcases Glasses-Free 3D and HDR10+ GAMING With Acclaimed Game Titles at GDC 2026
    • March 9, 2026
  • 4
    How the Iran war could create a ‘fertiliser shock’ – an often ignored global risk to food prices and farming
    • March 6, 2026
  • 5
    About 23,000 community care sector employees could get at least 7% pay raise as part of new salary guidelines
    • February 18, 2026
  • 6
    U.S. Ski & Snowboard and Google Announce Collaboration to Build an AI-Based Athlete Performance Tool
    • February 8, 2026
  • 7
    IBM to Support Missile Defense Agency SHIELD Contract
    • February 5, 2026
  • Smartphone hero image 8
    Zed Approves | Smartphones for Every Budget Range
    • January 29, 2026
  • 9
    Zed Approves | Work From Anywhere, Efficiently – The 2026 Essential Gear Guide
    • January 20, 2026
  • 10
    Global power struggles over the ocean’s finite resources call for creative diplomacy
    • January 17, 2026
Social Links
dotlah! dotlah!
  • Cities
  • Technology
  • Business
  • Politics
  • Society
  • Science
  • About
Connecting Dots Across Asia's Tech and Urban Landscape

Input your search keywords and press Enter.