Title: MorsedCode Engine – A Flask-Based Morse Code Converter Web App
Subtitle: A secure, database-driven platform for encoding and decoding Morse Code messages with user authentication and inbox functionality.
Project Image

Description:

The MorsedCode Engine is an interactive Flask web application that allows users to convert plain text into Morse code and decode Morse code back into readable text. The system goes beyond basic conversion — it integrates user registration, authentication, message storage, and email notifications, offering a real-world messaging experience built on top of Morse Code translation.

Authenticated users can send Morse-coded messages to others through the platform. Each message is stored securely in an SQL database with sender and receiver relationships, message encryption placeholders, and secret key functionality for future enhancements. The app features a well-designed front end powered by Bootstrap, custom CSS, and reusable templates for a consistent and modern user interface.


Objectives:



Tools used:
Python, Flask (with Flask-Bootstrap| Flask-SQLAlchemy| Flask-Login), HTML5 | CSS3 | Bootstrap 5 | Jinja2 templating, SQLAlchemy ORM with SQLite, Python Dotenv, Werkzeug for password hashing, WTForms


Stake holders:

Developer: Ibidapo Ogundeji

End Users:

Potential Beneficiaries: Educational institutions, communication enthusiasts, and open-source learners.



Role Played:

Designed the entire database schema, including user–message relationships using SQLAlchemy.

  1. Built registration, login, and logout systems with secure password hashing.
  2. Developed routes for encoding and decoding messages via custom Morse conversion logic.
  3. Implemented Flask-Login session management and role-based restrictions.
  4. Designed the user interface with Jinja templates, Bootstrap styling, and modular layouts (base.html, navigator_temp.html, footer_temp.html).
  5. Integrated email notifications for message delivery alerts.
  6. Performed testing and debugging to ensure smooth navigation and security compliance.



Business Impacts:

  1. Showcases strong technical capability in full-stack Python development — valuable for software engineering, data, and DevOps roles.
  2. Demonstrates a production-ready web system that can be extended into a secure communication platform or educational web app.
  3. Enhances personal brand visibility on professional platforms (GitHub, LinkedIn) as a developer skilled in Flask, database design, and web security.
  4. It is currently serving as my portfolio highlight for showcasing integration of backend logic, front-end design, and real-world data operations.


Next Step:

  1. Encryption Upgrade: Implement actual encryption/decryption using the secret key field for enhanced message security.
  2. UI Enhancements: Add dark/light mode toggle, improved animations, and responsive layouts for mobile users.
  3. Email Verification: Include confirmation links for new user signups.
  4. Message Search & Filters: Enable users to search their inbox by sender, title, or date.
  5. Cloud Deployment: Host the app on platforms like Render or AWS for global accessibility.
  6. REST API: Develop an API endpoint for third-party integrations or mobile app use.
  7. Notifications Dashboard: Introduce a frontend section for message status tracking (sent, read, encrypted).


Duration:
14 days


Team size:
1


Project Link