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
  • Cities
  • Technology

Meralco PowerGen’s PacificLight starts up 100 MW fast-response plant in Singapore

  • dotlah.com
  • June 20, 2025
View Post
  • Technology

Apple services deliver powerful features and intelligent updates to users this autumn

  • Dean Marc
  • June 12, 2025
View Post
  • Artificial Intelligence
  • Machine Learning
  • Technology

Apple supercharges its tools and technologies for developers to foster creativity, innovation, and design

  • Dean Marc
  • June 11, 2025
View Post
  • Technology
  • Working Life

It’s time to stop debating whether AI is genuinely intelligent and focus on making it work for society

  • dotlah.com
  • June 8, 2025
oracle-ibm
View Post
  • Artificial Intelligence
  • Technology

IBM and Oracle Expand Partnership to Advance Agentic AI and Hybrid Cloud

  • Dean Marc
  • May 6, 2025
View Post
  • Software
  • Technology

Canonical Releases Ubuntu 25.04 Plucky Puffin

  • Dean Marc
  • April 17, 2025
View Post
  • Artificial Intelligence
  • Technology

Tokyo Electron and IBM Renew Collaboration for Advanced Semiconductor Technology

  • Dean Marc
  • April 2, 2025
View Post
  • Artificial Intelligence
  • Technology

IBM contributes key open-source projects to Linux Foundation to advance AI community participation

  • dotlah.com
  • March 22, 2025


Trending
  • 1
    • Technology
    Different Types Of Cyber Threats That You Should Watch Out
    • May 23, 2019
  • 2
    • Technology
    ST Engineering Launches GEOEARTH, A Cloud-based One-stop Geospatial Service For Timely Insights
    • February 6, 2020
  • goswifties_la-defensa-arena_900 3
    • Featured
    Feel Pulse Of Paris. An Unmatched Concert Venue In La Défense.
    • May 10, 2024
  • 4
    • Cities
    • Technology
    Sembcorp Industries, Chiyoda Corporation And Mitsubishi Corporation Sign MOU To Explore Supply Chain Commercialisation Of Decarbonised Hydrogen Into Singapore
    • October 5, 2021
  • 5
    • Society
    Five Reasons English Speakers Struggle To Learn Foreign Languages
    • July 30, 2019
  • 6
    • Lah!
    CapitaLand Sets Sights On APAC REIT Market With Proposed Merger Of CapitaLand Mall Trust And CapitaLand Commercial Trust
    • January 23, 2020
  • 7
    • Lah!
    NTU Ranked Top 10 globally In 10 Subjects By Shanghai Ranking
    • May 27, 2021
  • 8
    • Cities
    DBS Named Asia’s Safest Bank For 12th Consecutive Year
    • October 21, 2020
  • 9
    • Lah!
    More Opportunities For Singaporeans Through New SkillsFuture Work-Study Programmes
    • August 14, 2020
  • new york 10
    • Cities
    • Scapes
    How To Explore NYC On A Low Budget
    • January 11, 2021
  • 11
    • Science
    • Technology
    From 20,000 Miles Up, Our Home Planet Is A Hypnotic Swirl Of The Familiar And The Sublime
    • August 6, 2019
  • 12
    • People
    • World Events
    We’re In Danger Of Drowning In A Coronavirus ‘Infodemic’. Here’s How We Can Cut Through The Noise
    • February 13, 2020
Trending
  • 1
    Meralco PowerGen’s PacificLight starts up 100 MW fast-response plant in Singapore
    • June 20, 2025
  • 2
    A Father’s Day Gift for Every Pop and Papa
    • June 14, 2025
  • 3
    Apple services deliver powerful features and intelligent updates to users this autumn
    • June 12, 2025
  • 4
    Apple supercharges its tools and technologies for developers to foster creativity, innovation, and design
    • June 11, 2025
  • 5
    It’s time to stop debating whether AI is genuinely intelligent and focus on making it work for society
    • June 8, 2025
  • 6
    PBBM asks Singapore to invest more in PH renewable energy projects
    • June 6, 2025
  • 7
    Singapore PM Wong arrives in Malacañang
    • June 4, 2025
  • 8
    Renewable energy, carbon credits are priority areas of cooperation for Singapore, Philippines: Lawrence Wong
    • June 4, 2025
  • 9
    Singapore businesses eye more investments in PH, says PM Wong
    • June 4, 2025
  • 10
    The Summer Adventures : Hiking and Nature Walks Essentials
    • June 3, 2025
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.