Created by Titas Mallick
Biology Teacher • M.Sc. Botany • B.Ed. • CTET (CBSE) • CISCE Examiner
Created by Titas Mallick
Biology Teacher • M.Sc. Botany • B.Ed. • CTET (CBSE) • CISCE Examiner
Online
Welcome to the BioNotes documentation hub.
Welcome to BioNotes, your premier "Scientific Minimalist" repository for biology education. We provide syllabus-aligned notes, interactive diagrams, and expert study guides for students from Class 5 to 12.
Syllabus Support: Comprehensive coverage for ICSE, ISC, CBSE (NCERT) and various State Boards.
Every note now features strategically placed Callout Blocks to enhance retention:
We've integrated High-Quality SVG Flowcharts designed for clarity and responsiveness. No more blurry images—just crisp, professional block diagrams for:
Deep-dive into modern biological breakthroughs with our new supplementary modules:
BioNotes/
├── 5-8 / # Foundational Life Sciences & EVS
├── 9-10 / # Core Biology (ICSE & CBSE/NCERT)
├── 11-12 / # Advanced Physiology, Genetics & Biotech
├── NCERT Hub / # Dedicated chapter-wise NCERT Notes & Activities
├── Question Bank/ # Topic-wise practice sets
├── Practical / # Lab guidelines & experiment procedures
└── Resources / # Glossary, Abbreviations, and Formula SheetsFocuses on curiosity and basic systems (Skeletal, Circulatory, Plant Life).
In-depth study of Cell Biology, Human Anatomy, and Environmental Science. Aligned with ICSE/CBSE patterns.
High-level concepts including Molecular Basis of Inheritance, Biotechnology, and complex Plant/Animal Physiology. Ideal for Board Exams and NEET/Olympiad foundation.
BioNotes is curated by Titas Mallick, a visionary educator and M.Sc. Botanist (University of Calcutta). With over 10 years of experience, Titas combines biological expertise with modern web technology to make science accessible.
BioNotes is built as an Open Source project. You can programmatically fetch notes to integrate into your own educational apps or websites.
The API is protected to prevent scraping. To obtain an API_SECRET_KEY, please contact Titas Mallick at eugenics.erudite@gmail.com.
GET /api/notes
| Parameter | Type | Required | Description |
|---|---|---|---|
ts | String | Yes | Current Unix timestamp (must be within 5 minutes of server time). |
token | String | Yes | HMAC SHA-256 validation signature. |
slug | String | No | Path slug for a single chapter (e.g., Class-10/1_1_Cell_Cycle). Returns full content + table of contents outline. |
slugs | String | No | Comma-separated list of slugs to batch fetch specific notes (e.g., Class-10/1_1_Cell_Cycle,Class-10/1_2_Structure_of_Chromosome). |
class | String | No | Filter chapters by class (e.g., Class-10). Returns metadata-only by default. |
content | Boolean | No | Pass true with class to fetch full content body (e.g., &content=true). |
fields | String | No | Comma-separated list of fields to filter in payload (e.g., &fields=title,slug). |
The API uses Dynamic HMAC Binding. Every request must include a ts (timestamp) and a token (signature) generated using your secret key.
Signature Formula:
token = sha256(SECRET_KEY + ts + identifier)
identifier is determined as follows (order of precedence):
slug parameter if fetching a single note.class parameter if fetching notes for a class.slugs parameter if batch fetching specific notes."all" if no specific filter is used.{
"title": "Cell Cycle & Division",
"description": "Standard biological process overview",
"slug": "Class-10/1_1_Cell_Cycle",
"content": "# Cell Cycle...",
"toc": [
{ "id": "introduction", "text": "Introduction", "depth": 2 }
],
"frontmatter": {
"title": "Cell Cycle & Division",
"description": "Standard biological process overview"
}
}const crypto = require('crypto');
const secret = 'YOUR_SECRET_KEY'; // Provided by Titas
const ts = Math.floor(Date.now() / 1000).toString();
// Example 1: Fetch list of Class-10 notes (metadata only, specifying fields)
const classId = 'Class-10';
const tokenClass = crypto.createHash('sha256').update(secret + ts + classId).digest('hex');
const classUrl = `https://bionotes-liard.vercel.app/api/notes?class=${classId}&fields=title,slug&ts=${ts}&token=${tokenClass}`;
// Example 2: Batch fetch specific note contents
const slugsList = 'Class-10/1_1_Cell_Cycle,Class-10/1_2_Structure_of_Chromosome';
const tokenSlugs = crypto.createHash('sha256').update(secret + ts + slugsList).digest('hex');
const slugsUrl = `https://bionotes-liard.vercel.app/api/notes?slugs=${slugsList}&ts=${ts}&token=${tokenSlugs}`;Want to see these concepts in action or connect with other biology students? Check out our official YouTube channel for high-quality biology tutorials, lab experiments, and simplified explainers, or join our community Discord server to ask queries, get help, and collaborate.
Explore the extended BioNotes ecosystem through our bots, communities, and static mirrors:
Help us build the ultimate biology treasure trove!
titasmallick@ybl."Biology gives you a brain. Life turns it into a mind."
Stay Curious. Stay Kind. Keep Learning!