No description
Find a file
2024-06-17 18:56:47 +02:00
public Add bootstrap files 2024-06-16 15:12:28 +02:00
src Show app directory at loading 2024-06-17 18:04:09 +02:00
create-core-with-swank.lisp Split create core 2024-06-16 15:11:26 +02:00
create-core.lisp Split create core 2024-06-16 15:11:26 +02:00
dev.metalisp.survey.asd Dont use cdm for bootstrap, load local 2024-06-16 15:11:53 +02:00
Dockerfile Add example dockerfile 2024-06-01 10:55:35 +02:00
LICENSE Add LICENSE information 2024-06-02 22:55:58 +02:00
package.lisp Use package per module 2024-06-11 23:07:12 +02:00
README.md Add Design Goals 2024-06-17 18:56:47 +02:00
README.org Add Design Goals 2024-06-17 18:56:47 +02:00
run-server.lisp Update setup files 2024-06-12 22:56:11 +02:00
run-server.sh Add bash line 2024-06-12 23:19:05 +02:00
sbcl-nginx.yml Remove unnecessary parts 2024-06-14 17:45:42 +02:00
setup.sh Focus on used libs 2024-06-12 23:20:32 +02:00

Table of Contents

  1. dev.metalisp.survey
    1. Introduction
      1. Design Goals
    2. Dependencies
    3. Mailing list
    4. Issue tracker
    5. News Feed
    6. Installation instructions
      1. 1. Install a Common Lisp implementation
      2. 2. Set up ASDF
      3. 3. Organize the project directory
      4. 4. Configure ASDF to find the project
      5. 5. Load the project
      6. 6. Run the project
      7. Optional: Example Initialization in .sbclrc
    7. License

dev.metalisp.survey

Introduction

I am developing a simple web application in Common Lisp that facilitates the execution of the System Usability Scale (SUS) questionnaire. This app allows users to easily conduct usability evaluations by presenting the standard SUS questions and collecting responses. The goal is to streamline the process of gathering and analyzing usability feedback.

The survey software developed aims to simplify the creation, administration and integration of questionnaires into existing websites or software systems. The use of flexible templates should enable a high degree of reusability and adaptability of the survey components. Users can easily combine and analyze data from multiple questionnaires within a single study, leading to a deeper understanding of the collected data. The software is self-hosted, which means that the data is stored on its own servers. This approach reinforces data protection and gives users complete control over their data, which is particularly important for data-sensitive areas. Through these features, the survey web application strives to make a valuable contribution to research projects, market research and other application areas where accurate data collection and analysis is crucial.

Design Goals

  • Integrate questionnaires into your own website or software: The software enables seamless integration of questionnaires into existing digital environments to improve user experience and simplify data collection.

  • Reusability through templates: Through customizable templates, the software offers an efficient solution for creating repeatable and consistent survey formats for various use cases.

  • Ability to combine data from multiple questionnaires into one study: Users can merge and aggregate data from different questionnaires to provide more comprehensive insights and analysis in a single study.

  • Data protection through self-hosting: The self-hosting option ensures complete data control and strengthens data protection as sensitive information does not need to be transferred to external servers.

Dependencies

Mailing list

Issue tracker

News Feed

Installation instructions

1. Install a Common Lisp implementation

  • Ensure you have a Common Lisp implementation installed. Common options include SBCL (Steel Bank Common Lisp) and CCL (Clozure Common Lisp). You can download and install them from their respective websites:

2. Set up ASDF

  • ASDF is typically bundled with modern Lisp implementations. However, if its not present, you can download it from ASDFs repository.

3. Organize the project directory

  • Place the dev.metalisp.survey project in the ~/common-lisp directory. Ensure the directory structure looks like this:

    ~/common-lisp/
      └── dev.metalisp.survey/
          ├── dev.metalisp.survey.asd
          └── src/
              └── app.lisp
    

4. Configure ASDF to find the project

  • Open your Common Lisp REPL and run the following commands to set up the ASDF central registry:

    ;; Ensure ASDF is loaded
    (require :asdf)
    
    ;; Add ~/common-lisp to the ASDF central registry
    (push #p"~/common-lisp/" asdf:*central-registry*)
    

5. Load the project

  • In your REPL, load the project by running:

    (asdf:load-system :dev.metalisp.survey)
    

6. Run the project

  • After loading the system, you can run the main function or entry point of the project. ml-survey:start, you would execute:

    (ml-survey:start)
    

Optional: Example Initialization in .sbclrc

To make the ASDF configuration persistent across REPL sessions, you can add the setup to your .sbclrc file:

  1. Edit .sbclrc

    • Open (or create) the .sbclrc file in your home directory and add the following lines:

      (require :asdf)
      (push #p"~/common-lisp/" asdf:*central-registry*)
      
  2. Reload SBCL

    • The next time you start SBCL, it will automatically include the ~/common-lisp directory in the ASDF central registry.

License

MIT