アプリ関連ニュース
- 2023年12月19日
- 技術情報
Exploring Adonis.js which is a Powerful Node.js Framework
In the ever-evolving landscape of web development, Node.js has established itself as a robust and scalable platform. One of the frameworks that has gained popularity within the Node.js ecosystem is Adonis.js. In this blog post, we’ll look into the world of Adonis.js, its key features, and the benefits that make it stand out in the crowded realm of web development.
Adonis.js is a full-featured, MVC (Model-View-Controller) framework for Node.js that takes inspiration from the elegant Laravel framework for PHP. The influence of Laravel is evident in Adonis.js’s syntax and the way it embraces conventions to simplify development. If you’re already familiar with Laravel, exploring Adonis.js should feel like a natural progression.
Key Features
1. Lucid ORM
Adonis.js comes bundled with Lucid, its own Object-Relational Mapping (ORM) system. Lucid simplifies database interactions, allowing developers to work with databases using a fluent and easy-to-understand syntax. This makes it a breeze to perform database operations and relationships.
2. Powerful CLI
The Command Line Interface (CLI) in Adonis.js is a developer’s best friend. It provides a set of powerful commands that automate common tasks, such as creating controllers, models, and migrations. This CLI significantly boosts productivity by eliminating the need for repetitive manual tasks.
3. Middleware
Adonis.js embraces the concept of middleware, enabling developers to write reusable code that can be executed during the request-response lifecycle. Middleware in Adonis.js can be applied globally or on a per-route basis, providing flexibility and control over the application’s flow.
4. Authentication and Authorization
Building secure applications is a top priority, and Adonis.js makes it easier with its built-in authentication and authorization system. It supports a variety of authentication methods and allows developers to define roles and permissions, ensuring that sensitive data is protected.
Benefits of Adonis.js
1. Productivity Boost
The combination of a powerful CLI and an expressive syntax significantly accelerates the development process. Adonis.js empowers developers to focus on building features rather than spending time on boilerplate code.
2. Convention over Configuration
Adonis.js follows the convention over configuration paradigm, which means developers can achieve a lot with minimal configuration. This promotes consistency across projects and reduces the cognitive load associated with complex setups.
3. Scalability
With its modular structure and support for MVC architecture, Adonis.js is well-suited for building scalable applications. As your project grows, the framework provides a solid foundation for maintaining clean and organized code.
Conclusion
As you explore Adonis.js, the Laravel-inspired framework for Node.js, you’ll likely appreciate the seamless transition if you’re already familiar with Laravel. From the elegant syntax to the powerful CLI, built-in features like Lucid ORM and its clear documentation, Adonis.js stands out as a framework that combines simplicity with robust capabilities, taking cues from one of PHP’s most beloved frameworks.
Hope you enjoy that. Happy coding, fellas!
Asahi
waithaw at 2023年12月19日 10:00:00
- 2023年12月13日
- AI
Revolutionizing Commit Messages with AI
In the world of software development, commit messages play a crucial role in tracking changes, understanding the evolution of code, and collaborating effectively within a team. However, writing meaningful commit messages can be a tedious task, often resulting in generic or uninspiring messages. This is where OpenCommit comes into play, aiming to eliminate lame commits with the power of artificial intelligence.
Auto-generate Meaningful Commits in 1 Second
OpenCommit is an innovative tool that leverages AI to automatically generate meaningful commit messages for your code changes. The primary goal is to enhance the quality of commit messages, making them more descriptive and relevant. By doing so, OpenCommit contributes to better code documentation and collaboration.
Getting Started with OpenCommit
Setting up OpenCommit is a breeze, and you can start using it as a command-line interface (CLI) tool. The process involves a few simple steps:
1. Install OpenCommit Globally
npm install -g opencommit
2. Obtain Your OpenAI API Key
Get your API key from OpenAI and ensure that you add your payment details to enable API functionality.
3. Set API Key in OpenCommit Config
oco config set OCO_OPENAI_API_KEY=<your_api_key>
Your API key is stored locally in the ~/.opencommit config file.
Usage Example
Once OpenCommit is set up, you can use it to generate commit messages for your staged changes. Here’s a quick example:
Stage your changes
git add <files...>
Generate a commit message with OpenCommit
opencommit
Alternatively, you can use the `oco` shortcut:
Stage your changes
git add <files...>
Generate a commit message with OpenCommit using the shortcut
oco
Configuration Options
OpenCommit provides various configuration options to tailor the generated commit messages according to your preferences. These configurations include:
Local per repo configuration
Create a `.env` file in your repository and set OpenCommit config variables such as API key, max response tokens, base path to OpenAI API, description, emoji usage, model selection, language, message template, and prompt module.
OCO_OPENAI_API_KEY=<your OpenAI API token>
OCO_OPENAI_MAX_TOKENS=<max response tokens from OpenAI API>
OCO_OPENAI_BASE_PATH=<may be used to set proxy path to OpenAI api>
OCO_DESCRIPTION=<postface a message with ~3 sentences description of the changes>
OCO_EMOJI=<boolean, add GitMoji>
OCO_MODEL=<either 'gpt-4', 'gpt-3.5-turbo-16k' (default), 'gpt-3.5-turbo-0613' or 'gpt-3.5-turbo'>
OCO_LANGUAGE=<locale, scroll to the bottom to see options>
OCO_MESSAGE_TEMPLATE_PLACEHOLDER=<message template placeholder, default: '$msg'>
OCO_PROMPT_MODULE=<either conventional-commit or @commitlint, default: conventional-commit>
Global Config for All Repos
Set global configurations for OpenCommit, such as the default model and language. But local configurations still take priority, allowing flexibility for specific repository needs.
oco config set OCO_MODEL=gpt-4
Conclusion
OpenCommit is a game-changer in the world of version control. By automating the process of crafting meaningful commit messages, it not only saves time for developers but also contributes to the overall readability and understanding of code repositories. Embrace the power of AI with OpenCommit, and say goodbye to mundane commit messages.
Hope you enjoy that.
Asahi
waithaw at 2023年12月13日 10:00:00
- 2023年12月11日
- AI
Google releases Gemini
Google’s generative AI chatbot, Bard, is set to receive a substantial upgrade with the integration of Gemini, Google’s latest and most advanced AI model. This update is expected to significantly enhance Bard’s capabilities, providing it with improved reasoning, planning, and understanding, among other features. Gemini, available in Ultra, Pro, and Nano sizes, is designed to run seamlessly across a range of devices, from mobile phones to data centers.
The deployment of Gemini to Bard will occur in two phases. Initially, Bard will be upgraded with a tailored version of Gemini Pro, available in English in over 170 countries. Subsequently, Google plans to introduce Bard Advanced, granting users access to Gemini Ultra, the most powerful AI model. These enhancements mark the most significant quality improvement for Bard since its initial launch, promising heightened proficiency in tasks such as understanding and summarizing content, reasoning, brainstorming, writing, and planning.

Gemini Pro underwent rigorous testing against industry-standard benchmarks, showcasing its superiority over GPT-3.5 in six out of eight tests, including MMLU and GSM8K. However, it’s worth noting that GPT-3.5 is over a year old, framing this launch as more of a catch-up move than a revolutionary leap. Despite this, the improvements aim to position Bard as a more capable and versatile AI, offering users an enhanced and refined experience.
Gemini Pro will initially power text-based prompts in Bard, with plans for future expansion to include multimodal support, incorporating both text and images. Looking ahead to 2024, Bard Advanced will make its debut, featuring Gemini Ultra. This version promises a comprehensive AI experience capable of understanding and acting on various types of information, such as text, images, audio, video, and code. Google intends to initiate a trusted tester program for Bard Advanced before a broader release, emphasizing the importance of safety checks in the development process. The update builds upon several recent improvements to Bard, positioning it as a robust and evolving AI chatbot.
yuuma at 2023年12月11日 10:00:00
次世代MRデバイスMeta Quest 3とApple Vision Proの比較について
VRデバイスだったMeta Quest 2がカラーパススルーによるAR機能を追加してMeta Quest 3にアップデートされ、また来年度にはApple社より注目されているMRデバイス Apple Vision Proが発売予定とされています。

Image credit: Apple
Meta Quest 3が499ドル(約7.5万円)という比較的安価で発売されているのに対して、Apple Vision Proの販売価格は3,499ドル(約52万円)と高価です。
MRデバイスとして注目されているこれらの2機種ですが、先日、中国のWellsenn XR社より製造原価の推計が発表されました。
(参考記事) Meta Quest 3 & Apple Vision Pro Production Costs Estimated By Supply Chain Analyst Firm
https://www.uploadvr.com/meta-quest-3-apple-vision-pro-production-cost-estimate/
(参考記事) Apple「Vision Pro」の製造原価は「Meta Quest 3」の4倍以上か——中国アナリストが推計
https://www.moguravr.com/manufacturing-costs-for-apple-vision-pro-and-meta-quest-3/
この記事によれば、Meta Quest 3の原価は430ドルに対して、Apple Vision Proの原価は1,726ドルになります。
Meta Quest 3の原価は430ドルで販売価格は499ドルなのでMeta社はMeta Quest 3を販売することで利益はほぼないか、損失している可能性もあるとのことです。Meta社は利益よりもVR/MRの普及とマーケットのシェア獲得に注力しているようです。
Meta Quest 3ではハイエンドのMR/VR用チップセット「Snapdragon XR2 Gen 2」が採用されており、これが最も原価がかかっているパーツとされています。
一方、Apple社は高性能の独自チップセットM2やR1が搭載される予定ですが、Apple Vision Proで最も原価がかかっているパーツはディスプレイで、高価なソニー社マイクロOLEDディスプレイが採用予定で、おそらく画面の綺麗さ、MR合成の自然さはMeta Quest 3以上と推測されます。
現状のMeta Quest 3で高クオリティのMR体験が可能なので、それよりも高品質なApple Vision ProのMRには期待は高まります。
木曜日担当:nishida
nishida at 2023年11月30日 10:00:00
- 2023年11月29日
- AI
ローカルでチャットAIを動作させる
tanaka at 2023年11月29日 10:00:00