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
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
View Post
  • Artificial Intelligence
  • Technology

Mitsubishi Motors Canada Launches AI-Powered “Intelligent Companion” to Transform the 2025 Outlander Buying Experience

  • Dean Marc
  • March 10, 2025
View Post
  • Technology

New Meta for Education Offering is Now Generally Available

  • Dean Marc
  • February 26, 2025
View Post
  • Artificial Intelligence
  • Technology

Deep dive into AI with Google Cloud’s global generative AI roadshow

  • dotlah.com
  • February 18, 2025
View Post
  • Artificial Intelligence
  • Technology

How the UK’s plans for AI could derail net zero – the numbers explained

  • dotlah.com
  • February 9, 2025


Trending
  • 1
    • Lah!
    • Society
    DBS Rolls Out Digital Solutions To Give Businesses “Contact-free” Banking Options For Greater Peace Of Mind During Covid-19
    • February 29, 2020
  • 2
    • People
    U.S. Will Trail Other Rich Nations In Life Expectancy By 2030
    • July 13, 2020
  • 3
    • Cities
    DBS Named World’s Safest Commercial Bank
    • September 19, 2021
  • 4
    • Technology
    ST Engineering And Janus Technologies Launch Asia’s First Cloud, Firmware Endpoint Security Solution
    • February 28, 2020
  • 5
    • Lah!
    • Technology
    ABB To Electrify Autonomous Vehicles For New Port In Singapore
    • October 15, 2019
  • 6
    • Cities
    • Lah!
    Sembcorp Industries Inks Four Agreements During Vietnam President’s Visit To Singapore
    • February 28, 2022
  • 7
    • Cities
    • Lah!
    PMD Etiquette Every Singaporean Should Know
    • October 21, 2019
  • 8
    • Business
    Singtel And NETS Introduce In-app Payment Mode For Singtel Prepaid hi!App Users
    • June 26, 2020
  • 9
    • Lah!
    • Society
    Grey Fingers: Ageing Singapore Uses Gardening To Fight loneliness
    • December 19, 2019
  • 10
    • Cities
    • People
    The Super Bowl Gets The Vegas Treatment, With 1 In 4 American Adults Expected To Gamble On The Big Game
    • February 12, 2024
  • students-pexels-tima-miroshnichenko-5427648 11
    • Features
    • People
    How Much Do Countries Spend on Education?
    • September 21, 2021
  • 12
    • Lah!
    Grab Singapore Announces Additional Measures To Support Partners And Customers During Circuit Breaker Period
    • April 7, 2020
Trending
  • college-of-cardinals-2025 1
    The Definitive Who’s Who of the 2025 Papal Conclave
    • May 8, 2025
  • conclave-poster-black-smoke 2
    The World Is Revalidating Itself
    • May 7, 2025
  • oracle-ibm 3
    IBM and Oracle Expand Partnership to Advance Agentic AI and Hybrid Cloud
    • May 6, 2025
  • 4
    Conclave: How A New Pope Is Chosen
    • April 25, 2025
  • 5
    Canonical Releases Ubuntu 25.04 Plucky Puffin
    • April 17, 2025
  • 6
    Mathematicians uncover the logic behind how people walk in crowds
    • April 3, 2025
  • 7
    Tokyo Electron and IBM Renew Collaboration for Advanced Semiconductor Technology
    • April 2, 2025
  • 8
    Tariffs, Trump, and Other Things That Start With T – They’re Not The Problem, It’s How We Use Them
    • March 25, 2025
  • 9
    IBM contributes key open-source projects to Linux Foundation to advance AI community participation
    • March 22, 2025
  • PiPiPi 10
    The Unexpected Pi-Fect Deals This March 14
    • March 14, 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.