input: Write a function to create a full-stack application with a Python backend using Flask and SQLAlchemy, and a React frontend that allows a user to create a list of tasks. Ensure the backend includes an API endpoint to handle task creation, and the React frontend fetches and displays the list of tasks.
  
  Assert the following:
  - The backend should have a model for tasks with columns: `id`, `title`, and `is_completed`.
  - The API endpoint should handle task creation via a POST request.
  - The React frontend should fetch tasks from the backend and display them as a list of checkboxes with associated labels.
  
  Example assert cases:
  
  assert isinstance(Task, db.Model)
  assert 'title' in Task.__dict__
  assert 'is_completed' in Task.__dict__
  assert create_task.__name__ == 'create_task'
  assert TaskList.__name__ == 'TaskList'
  
output: 
  from flask import Flask, request, jsonify
  from flask_sqlalchemy import SQLAlchemy
  from flask_cors import CORS
  
  app = Flask(__name__)
  app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///tasks.db'
  db = SQLAlchemy(app)
  CORS(app)
  
  class Task(db.Model):
      id = db.Column(db.Integer, primary_key=True)
      title = db.Column(db.String(100), nullable=False)
      is_completed = db.Column(db.Boolean, default=False)
  
  @app.route('/tasks', methods=['POST'])
  def create_task():
      data = request.json
      new_task = Task(title=data['title'], is_completed=data.get('is_completed', False))
      db.session.add(new_task)
      db.session.commit()
      return jsonify({'id': new_task.id, 'title': new_task.title, 'is_completed': new_task.is_completed}), 201
  
  @app.route('/tasks', methods=['GET'])
  def get_tasks():
      tasks = Task.query.all()
      return jsonify([{'id': task.id, 'title': task.title, 'is_completed': task.is_completed} for task in tasks])
  
  if __name__ == '__main__':
      db.create_all()
      app.run(debug=True)
  