Skip to content

An advanced writing assistant that helps users improve their writing through grammar checking, style analysis, and intelligent suggestions.

License

Notifications You must be signed in to change notification settings

stephenombuya/AI-Powered-Writing-Assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI-Powered Writing Assistant

An advanced writing assistant that helps users improve their writing through grammar checking, style analysis, and intelligent suggestions.

Features

Text Analysis

  • Grammar and spelling check
  • Sentence structure analysis
  • Style and tone recommendations
  • Readability scoring

Content Enhancement

  • Sentence rephrasing suggestions
  • Vocabulary improvements
  • Tone and sentiment analysis
  • Writing style recommendations

Document Management

  • Export to Word (.docx) and PDF formats
  • Document version history
  • Progress tracking
  • Cloud storage integration

Technical Stack

  • Backend: Python, Flask
  • NLP: SpaCy, TextBlob
  • Grammar Checking: language-tool-python
  • Document Processing: python-docx, fpdf
  • Database: SQLAlchemy with SQLite
  • Testing: pytest

Installation

  1. Clone the repository:
git clone https://github.com/stephenombuya/AI-Powered-Writing-Assistant
cd writing-assistant
  1. Create and activate virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Download SpaCy model:
python -m spacy download en_core_web_sm
  1. Initialize database:
flask db upgrade

Usage

  1. Start the server:
flask run
  1. API Endpoints:
  • Analyze text:
POST /analyze
{
    "text": "Your text here",
    "title": "Document Title"
}
  • Export document:
POST /export/{document_id}
{
    "format": "docx" # or "pdf"
}

Development

  • Run tests:
pytest
  • Format code:
black .

Project Structure

writing-assistant/
├── app/
│   ├── __init__.py
│   ├── models.py
│   ├── routes.py
│   ├── text_processor/
│   │   ├── __init__.py
│   │   ├── grammar_checker.py
│   │   ├── text_analyzer.py
│   │   └── document_exporter.py
│   └── utils.py
├── tests/
├── requirements.txt
└── README.md

Analysis Features

Grammar Checking

  • Spelling errors
  • Grammar mistakes
  • Punctuation issues
  • Style inconsistencies

Text Analysis

  • Sentiment analysis
  • Tone detection
  • Readability scoring
  • Sentence complexity analysis

Document Export

  • Microsoft Word (.docx) format
  • PDF format
  • Formatted output
  • Preservation of styling

Contributing

  1. Fork the repository
  2. Create feature branch: git checkout -b feature/new-feature
  3. Commit changes: git commit -am 'Add new feature'
  4. Push to branch: git push origin feature/new-feature
  5. Submit pull request

License

This project is licensed under the GNU General Public License - see the LICENSE file for details.

Future Improvements

  • Add support for more languages
  • Implement machine learning for better suggestions
  • Add plagiarism detection
  • Create browser extension
  • Add real-time collaboration features
  • Implement advanced text analytics
  • Add support for more export formats

About

An advanced writing assistant that helps users improve their writing through grammar checking, style analysis, and intelligent suggestions.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages