A smart contract is a computerized protocol running on the blockchain, which provides a reliable environment for transactions among trustless participants. The business of maritime transportation is usually with multifarious participants and burdensome paperwork. Blockchain-based smart contract systems are promising to improve the efficiency and transparency of the transactions. However, due to the gap between domain experts and programmers, and the diversity of maritime business scenarios, it is challenging to efficiently develop reliable smart contracts for this domain. In this paper, we propose MariSmart, a novel development framework for maritime transportation smart contracts, which consists of a business logic model and a set of Solidity templates. The templates are designed based on the business logic model extracted from the domain knowledge. We carry out case studies on three real-world maritime transportation systems to show the feasibility and effectiveness of the framework.