Discover your philosophical worldview in 8 dimensions.
This interactive quiz maps your beliefs across fundamental metaphysical questions—from the nature of reality to the existence of the divine—and matches you with the historical system that best fits your views.
- 8 Fundamental Dimensions: Explore your stance on Ontology, Topology, Dynamics, Teleology, Manifestation, Divinity, Character, and Axiology.
- System Matching: Compare your profile against 40 major philosophical systems, including Stoicism, Spinozism, Advaita Vedanta, Scientific Materialism, and more.
- Detailed Breakdown: See exactly where you align and diverge with your top match and runner-up.
- Commitment Selection: Optional pre-quiz step to see how your results compare to a system you already identify with.
- LLM Preferences: See how major AI models (like GPT-4, Claude 3, Gemini) answer the quiz and align with different metaphysical systems.
- Community Contribution: A dedicated "Improve the Taxonomy" page where you can help refine the system classifications.
- Explore Page: Browse all systems with detailed breakdowns, including primary source recommendations and Wikipedia links.
- Compare Page: Select any two systems to see a side-by-side comparison of their dimensional values.
- Map Visualization: View a 2D projection of the metaphysical landscape to see how systems cluster together.
- Social Sharing: Share your results on X (Twitter), BlueSky, Threads, Facebook, Reddit, and LinkedIn with a custom generated image.
- Dark Mode: Toggle between light and dark themes for comfortable viewing.
- Responsive Design: Works seamlessly on desktop and mobile devices.
Because this application loads data from JSON files, you need to run it through a local web server to avoid browser security restrictions (CORS).
If you have Python installed, you can run a simple server from the project directory:
# Python 3
python -m http.server
# Python 2
python -m SimpleHTTPServerThen open http://localhost:8000 in your browser.
If you have Node.js installed, you can use http-server:
npx http-server .Then open the URL shown in the terminal (usually http://127.0.0.1:8080).
metaphysics-quiz/
├── index.html # Landing page
├── quiz.html # Main quiz interface
├── explore.html # Browse systems
├── compare.html # Compare two systems
├── dimensions.html # Explore quiz dimensions
├── map.html # 2D visualization of systems
├── improve.html # Contribution page
├── llm_results.html # AI model preferences
├── css/ # Stylesheets
├── js/ # Client-side JavaScript
├── data/ # JSON data files
│ ├── dimensions.json # Quiz dimensions and options
│ ├── systems.json # Philosophical systems database
│ ├── systems_map.json # Pre-computed 2D map coordinates
│ └── batch_results.json # LLM quiz results
└── scripts/ # Python backend tools
├── generate_map.py # Generate map coordinates
├── quiz_llm.py # Run quiz on LLMs
└── run_batch_quiz.py # Batch LLM testing (outputs to data/)
The map.html page uses coordinates generated by a Python script. If you modify data/systems.json or want to experiment with different dimensionality reduction algorithms (MDS or t-SNE), you can regenerate the map data.
You will need Python installed with the following packages:
scikit-learnnumpy
pip install scikit-learn numpyRun the script from the project root:
python scripts/generate_map.pyBy default, it uses MDS (Multidimensional Scaling). You can specify t-SNE with an argument:
python scripts/generate_map.py --algo tsneThis will update data/systems_map.json, which is read by map.html.
- HTML5: Semantic structure.
- CSS3: Custom styling with CSS variables for theming.
- Vanilla JavaScript (ES6+): Logic for the quiz, scoring, and UI updates.
- Google Fonts: Typography (Outfit and Playfair Display).
- D3.js (implied): Used for the map visualization (if applicable, or custom JS).
This project is an open-source effort to map the landscape of metaphysical thought. We strive for accuracy and neutrality, but there is always room for improvement.
If you find issues with any of the entries, disagree with a classification, or would like to suggest improvements or new systems, we encourage you to get involved. All contributions will be reviewed and taken into consideration for future updates.
- Submit an Issue - Report bugs or suggest improvements
- Submit a Pull Request - Contribute code or content changes
Conceptualized and developed by Arthur Juliani (@awjuliani). Special thanks to @taylorlapeyre for his valuable insights and suggestions during the process of refining the taxonomy and the user interface.