From cb2fd48cbbbf064cdafd1cb6007f99c9bdc74619 Mon Sep 17 00:00:00 2001 From: webbrain-one <295484252+webbrain-one@users.noreply.github.com> Date: Sun, 2 Aug 2026 22:43:08 +0300 Subject: [PATCH] docs: add README --- README.md | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..16cd509 --- /dev/null +++ b/README.md @@ -0,0 +1,46 @@ + + +# Tweetalyst + +Tweetalyst is a lightweight, web-based microblogging platform. It enables users to share short updates, build a social following, and search through community content. Designed with a focus on simplicity and real-time interactions, it replicates core microblogging features with a clean, responsive interface. + +## Features + +* **Microblogging:** Share updates with a strict 140-character limit. +* **Social Graph:** Follow and unfollow other users to curate your feed. +* **Smart Formatting:** Automatic hyperlinking for `@mentions` and `#hashtags`. +* **Real-time UI:** AJAX-powered post submission and deletion with visual animations. +* **User Profiles:** Support for custom bios, contact emails, and Gravatar avatars. +* **Search:** Query the timeline by keyword, user, or hashtag. +* **Live Character Counter:** Visual feedback that changes color as you approach the post limit. + +## Installation + +1. Clone the repository: + ```bash + git clone https://github.com/aero/Tweetalyst.git + cd Tweetalyst + ``` +2. Initialize the SQLite database using the provided schema: + ```bash + sqlite3 tweetalyst.db < db/tweetalyst.sql + ``` +3. Configure your web backend to serve the `root/` directory and establish a connection to `tweetalyst.db`. +4. Start your server and access the application via your browser. + +## Usage + +* **Compose Posts:** Type your message in the text area. The interface displays remaining characters and disables the submit button if the limit is exceeded. +* **Publish & Delete:** Submitting a post instantly prepends it to the feed without a page reload. Click the trash icon to remove posts via AJAX. +* **Tag & Mention:** Use `@username` to link to user profiles and `#hashtag` to create searchable topics. +* **Search:** Type keywords into the top-right search bar to filter posts. +* **Follow Users:** Navigate to a user's profile to view their bio and post history, then click follow to add their content to your stream. + +## Tech Stack + +* **Database:** SQLite (`db/tweetalyst.sql`) +* **Frontend:** HTML5, CSS3 (`root/static/static.css`) +* **JavaScript:** jQuery & jQuery UI (`root/static/static.js`) +* **Assets:** Gravatar integration for user avatars + +*(Note: Backend server logic is not included in the provided repository snippet.)*